什么样的代码一看就知道是新手?

2018-09-16 00:44:18 +08:00
 yidinghe

有的代码一看就是新手写的,写这样的代码的程序员,基本上只能留在初级程序员的岗位上。这样的代码有哪些特点呢?

1、没有格式,混乱不堪。比如缩进对不齐、语句从不换行、空格和制表符混搭等等。

这表明作者缺乏阅读代码,包括自己代码的经验。只有长期经常阅读代码的人才会有意识的对自己的代码做格式化。

而缺乏阅读代码经验的人必然也缺乏维护代码的经验。这种人可能经常跳槽,连自己的代码都从来不看第二遍,留下一堆的坑让别人来填。

而缺乏维护代码经验的人也必然缺乏解决故障的经验和重构代码的经验,而这两个对程序员的工作效率来说是至关重要的。很多时候老油条看一眼就知道问题出在哪里,而新手要调试一整天。别让薪水花冤枉了。

你可能说我太吹毛求疵,不就是排版乱一点,哪那么多道道?但实际情况真的就是这样子。

2、不会命名,或老写错字。简单的单词都能拼错就不说了,我另外举个例子,纸张的正面不是 front 嘛,他一查字典,结果选了 positive,“积极正面”的正面,那好吧,反面你就用 negative 吧,我不,他又查字典,结果起个名字叫 reverse,这搞得完全看不懂了。

让这种人加到项目里面来,你就恨不得手把手的帮他把代码写了(也恨不得薪水都帮他领了),一不留神就各种奇葩名字。其实 Java 早就支持 Unicode,实在不行用中文名字算了。

3、语法高亮。这个从代码本身看不出,但可以瞄一眼作者的 IDE 是啥样。IDE 现在都可以自定义语法高亮,但是默认的情况下都只有三个颜色:关键字一个颜色,字符串一个颜色,剩下的一个颜色。

而实际上经验丰富的开发者都会尽可能多的用颜色,来区分类、成员、方法和参数等等,这样可以提高阅读效率。比如 color-themes.com 就有很多现成的风格。

看得舒服是次要的,最终目的是要提高阅读效率。当然除了颜色外,好的字体也很重要,这里就不多说了。总之,只有老油条才会关注这些东西,不当回事的多半是初学者。

说了这么多,其实一句话:当新手开发效率到了一个极限想要继续提升,就必须在代码的格式、命名、视觉效果上下功夫。这是新手必须要迈过的坎。

18823 次点击
所在节点    程序员
125 条回复
thinker3
2018-09-19 09:44:11 +08:00
认同 1,2 两点。在招聘和试用期把关
xuanwu
2018-09-20 19:14:56 +08:00
第二点. 中文命名是无论新老手都适用的, 越是与非 IT 业务相关越可显出优势: https://www.v2ex.com/t/477109#reply0
zaqmjuop
2018-10-05 10:43:05 +08:00
github 不是有 code style 么
luoling8192
57 天前
@flowfire #74 辅-元-辅,你至少得把 y 改成 i 再加 ed 吧(
luoling8192
57 天前
@storypanda #92 直接 return a==b 就好了啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/489742

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX