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

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 条回复
mostkia
2018-09-17 13:20:32 +08:00
@Phariel 我在想。。这样写有什么用?
idtaanlcoe
2018-09-17 13:24:46 +08:00
太复杂的
danc
2018-09-17 13:26:39 +08:00
什么样的代码一看就知道是新手?你写的代码
Corbusier
2018-09-17 16:15:14 +08:00
不知道如何定义新手代码,只是上家公司有个小子一堆 chinglish 变量名,savePinglun,saveHuifu,tishi,tijiao...我看了都脸酸。各种 if 嵌套,同步请求。
slimbloody
2018-09-17 16:36:31 +08:00
请教一下大佬, 如何提高命名能力, 有相关资料推荐嘛?
karmaisbitch
2018-09-17 16:39:27 +08:00
感觉这种帖子,在 V2EX 上很常见啊,简直要月经贴了
SOLIDxRaiden
2018-09-17 16:49:01 +08:00
在游戏代码里写人力循环的我(
ryd994
2018-09-17 16:49:23 +08:00
只要你还在一天到晚只写代码,还要纠结怎么打字更快,那你就是新手。
高手在写文档
老手在写 Excel
di1012
2018-09-17 17:37:54 +08:00
我这种人写的代码,一看就是新手,尽管已经工作四五年了
Joyboo
2018-09-17 19:10:35 +08:00
格式真的非常非常非常重要,真的,其次是命名
Vamposine
2018-09-18 00:28:52 +08:00
@itskingname 写惯了 java 的我也经常这么写 python。Orz
javaWeber
2018-09-18 09:32:00 +08:00
String shengfen;
ww940521
2018-09-18 09:40:54 +08:00
我以前感觉编译器花红柳绿的看起来很煞笔,原来煞笔的是我自己啊,o(╥﹏╥)o
linZ
2018-09-18 10:16:33 +08:00
@DnC 看的我局部一紧。。。
shapimai
2018-09-18 11:04:52 +08:00
你觉得是新手→他就是新手←你不喜欢他

无关代码 zsbd
cncqw
2018-09-18 11:26:08 +08:00


刚在 git 上看到别组同事写的,怎么讲,能写出这种代码的人可以说是 phper 里面的翘楚
CheckH
2018-09-18 11:26:54 +08:00
看大家讨论的如此热闹,我差点就忘了这是篇广告。
berforest
2018-09-18 13:23:37 +08:00
经常关注别人是不是新手的一般都是新手或者不太行的老手
YumeMichi
2018-09-18 13:27:37 +08:00
@cncqw hhhhh
Joyboo
2018-09-18 16:24:37 +08:00
@cncqw 这种还算好点的了,我见过更糟的

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

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

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

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

© 2021 V2EX