写点什么

如何在面试中应对编程与算法面试?

  • 2024-04-16
    江西
  • 本文字数:1334 字

    阅读完需:约 4 分钟

获取更多技术资料,请点击!


求职面试的过程中,编程能力也是面试官非常看重的一项能力。而对于编程这项能力主要的考察点也有三个维度:

初级:编程的基本功

编程的基本功主要考察的编程语言的基本语法,原理知识,以及一些在编程过程中的常见问题与解决方案。比如,如果面试官考察:九九乘法表,那么就是考察你的编程的基本功。主要看你拿到一个简单的需求后,能否实现出来。如果面试官考察垃圾回收机制这些知识,那么考察的就是你对于编程语言特性的理解。如果要是涉及到高级一点的元编程技巧,如果不理解这些知识,是无法完成的。如果面试官考察:深拷贝浅拷贝,这个场景其实在读写,修改一些嵌套结构的数据是非常常见的问题,那这个场景其实就是在考察你是否在编程过程中有发现一些问题,以及有掌握到对应的解决方案,包括多线程编程,都属于这类型问题。

高级:数据结构与算法

在具备比较扎实的编程基本功之后,就需要掌握数据结构与算法的知识。其实这门课是所有计算机相关专业同学的必修课,虽然对于测试工程师来说,我们常常吐槽它“面试造火箭,进去拧螺丝”。但是数据结构决定了你是否有一个更为扎实的编程基本功。以及我们不得不面对的现实问题,为了面试,也得冲! 自然在数据结构与算法中,我们也无需盲目学习,它也是有它自己的明确的学习路线和学习范围的。如果你的目标是中小厂,那么也要掌握一些较为基础的算法,比如冒泡排序,二分查找,快速排序等。如果你的目标是大厂,那么就要掌握更为深入的数据结构,比如线性表:链表、堆栈,非线性表:树、图等。

资深专家:设计模式

而如果能熟练掌握设计模式的用法,已经可以算作是一个测开的专家了。而设计模式的学习,通常是通过在开发各种工具或者平台过程中,是要时刻想着怎么让代码保持一个好的扩展性,可读性,可维护性。常用的设计模式通常有:工厂模式、单例模式、策略模式、装饰器模式等。

如何提升编程的基本功

对于大部分同学来说,我们首要完成的就是编程基本功的提升。如果没有一个好的编程基本功,代表在实际开发过程中,可能连一些简单的需求也无法完成。有一种极为科学的学习方法叫做 PDCA 循环学习法,以下为通过 PDCA 循环法学习 Python 的方式



在熟悉 Python 的基本语法之后,则需要完成一些比较大型的需求去验证自己的学习效果:


  • 开发一个简单的后端系统。

  • 开发自动化测试脚本的框架。


如果能在此过程中,不停的去补充自己的技能以及在项目中历练,在一年半载之后,就会发现自己的编程能力就能有质的飞跃和提升。再具备一些基本的开发经验后,就可以进一步挑战算法与设计模式的学习:


  • 开发像 HttpRunner 一样的测试框架。

  • 开发一个好用的测试平台。


在这个过程中,你会发现如果不用设计模式与算法,那么很多需求的实现会变的非常难以实现。不停的重构,是每个开发者的宿命。自然在千锤百炼之后,你也会朝着一个技术专家之路迈进。自然,千里之行始于足下,同时万事也是开头难。最后送大家马斯克的一段话,共勉!




社会的竞争其实并不需要你比所有人都强,绝大部分人都是非常懒的,几年都不会去学习,不会进步。所以你只要稍微努力一些,确保超过全社会 60%的人;如果你干什么事都专注一点,就可以超过社会上 80%的人;如果你愿意在一件事上高强度的深耕个 3-5 年,进全社会前 10%并不难,甚至 5%也没有多大难度。

用户头像

社区:ceshiren.com 微信:ceshiren2021 2019-10-23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
如何在面试中应对编程与算法面试?_霍格沃兹测试开发学社_InfoQ写作社区