专栏首页IT大咖说程序员面试被要求手写代码?你与高级程序员之间的差别就在这里

程序员面试被要求手写代码?你与高级程序员之间的差别就在这里

在面试中,你被要手写代码,原本自信心爆棚的你突然间提笔忘字。在一张纸上反复涂涂画画,最后勉强的写出了一个功能。结果却漏洞百出。面试过程相当不顺利,丢下笔,敷衍的结束了这场面试,回去对周围的朋友苦涩地说:这都什么时代了,还要求手写代码?这家公司落后了。

不知道你们怎么样,反正小编在毕业初期面试的时候大多都是手写代码,手写代码相对于使用编译器来说更加考验面试者的能力,毕竟大家在习惯了编译器一些的快捷提示工能之后,真的有可能提笔忘“码”哦!

然而,这就是你与顶级程序员最根本的差距。那么顶级程序员们手写代码都特别厉害吗?随便一动笔就是行云流水,一泻千里?不不不!也许,他们根本就没手写过代码。

当你在听七八十年代程序员们的故事时,一定会有这么一件趣事:

当年电脑还没有普及到每家每户,如果想编程,最好的办法就是跑网吧去,可上网费贵啊,就只能买个本子,拿起水笔,把代码写好,最后再到网吧里去输入、调试、运行,这样可以节省很多上网的费用。

一位大一的新生坚信手写代码可以让自己更好的学习编程,于是踏上了这条不归路。起初,手写代码确实帮他打下了坚实的基础,然而很快他就被一个程序,十几页的代码调试给搞疯了,开始四处求助,最终他放弃了这种学习方式。

在物资匮乏的年代,手写代码几乎成了程序员的必备技能,可那时候的人,更多的是迫于无奈才手写的代码,这是初学者学习的一个好方法,可当你深入学习时,再想手写,一定会造成很大的麻烦。

纵观当今的互联网巨头,似乎面试涉及手写代码的也是寥寥无几。当然,有时你还是无法逃避手写代码的命运。

据采访,一位参加过腾讯面试的程序员就遭遇到了手写代码。三面是视频面试,面试官出了一道算法题:打印三角螺旋数组,限时20分钟。

那么,为什么还是会有公司愿意测试手写代码呢?

不管是机写代码还是手写代码,只要是写代码,都可以从中看出一个人的代码水平和习惯。

变量名,传参数是不是很随意?随意取名是维护的噩梦;

接口、函数设计能力;

界面、功能设计能力;

代码结构是否层次分明,思路是否清晰,?

代码可读性;可维护性如何?

细节处理是否到位?

与面试官沟通的次数;

这些问题在机写时,就很容易被掩盖。

比如思路是否清晰,在电脑上,很轻易的就会被抹去,而手写就不一样了,如果你的思路不够清晰,不够严谨,那么就会在纸上看到各种重复书写的疤痕。

其实,每家公司让面试者手写代码,目的都略有不同,有些是想考察面试者的编码习惯、有些则是考察面试者逻辑思维是否清晰,有些是起到验证的目的,有些呢则是考察面试者的严谨性。

通常面试的时候,都会出现这么一个情景:

“你觉得这个代码的复杂度是多少?”

“好像是%#%¥&”

“为什么呢?”

“因为我产生了很多临时字符串”

“那你觉得还有优化的空间吗?”

“如果这般如此如此,再如此如此,应该可以干掉临时字符”

“好吧,那你把你的想法写出来看看。”

“……”

对于手写代码这个问题,顶级程序员或者未来的顶级程序员,与普通程序员的差距就在于,普通程序员面试完之后会一直沉浸在抱怨和谴责这家公司中,而顶级程序员,则已经开始行动了。

本文分享自微信公众号 - IT大咖说(itdakashuo),作者:Java架构人生

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-08-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何写出优质干净的代码

    先列举出编写干净代码的一些好处,再提出6个技巧用于编写干净代码,供开发者进行参考学习。

    IT大咖说
  • 程序员自己能写测试的话,还要测试人员做什么?测试表示很无辜

    本篇想要通过探讨这些问题背后的困难,来说明程序员怎样通过编写自测代码更有效率的进行开发。

    IT大咖说
  • 为你揭秘全球最大软件公司的代码评审机制

    微软代码评审是一种被广泛采用的工程实践。成千上万的工程师认为这是一个伟大的最佳实践。大多数高绩效团队花费大量时间进行代码评审。

    IT大咖说
  • 程序员面试被要求手写代码,你与顶级程序员的差别在哪?

    面试时,被要求手写代码,自信心爆棚的你,忽然有了提笔忘记的感觉,在一张纸上反复涂涂画画,勉强写出了一个功能,结果漏洞百出,面试过程相当不顺利,丢下笔,对...

    xcbeyond
  • AJAX 下拉无刷新分页加载

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

    泥豆芽儿 MT
  • IDEA 代码规范插件

    这时候就必须得有一些代码规范,来统一团队代码;IEDA中,有一个插件(Alibaba Java Coding Guidelines)帮我们很好的解决了这一问题;

    Dawnzhang
  • 程序员的日常:为了写一段代码......

    @TMM-eng:本来想周末看看代码的,结果呢,代码忘了往远程推了,在家用自己的电脑download的时候傻眼了,不是最新版本的,好嗨哦

    极乐君
  • 手把手教你应对这15种“烂代码”

    你已经在某个项目的一部分中拖延了很久。推迟了一周以后,今天是你计划打开遗留代码库并查看已完成的内容的时候。你一想到这代码库就害怕。因为你知道离岸软件开发团队已经...

    昱良
  • 支招 | 手把手教你应对这15种“烂代码”

    你已经在某个项目的一部分中拖延了很久。推迟了一周以后,今天是你计划打开遗留代码库并查看已完成的内容的时候。你一想到这代码库就害怕。因为你知道离岸软件开发团队已经...

    AI研习社
  • 手把手教你应对这 15 种“烂代码”

    推迟了一周以后,今天是你计划打开遗留代码库并查看已完成的内容的时候。你一想到这代码库就害怕。

    良月柒

扫码关注云+社区

领取腾讯云代金券