在楼下部门某程序员桌上看到一本书《代码整洁之道》,敏捷软件开发之父 Bob 大叔出品,翻了下目录感觉受益良多,每个希望在公司里有成长和作为、希望升职加薪、希望走向牛逼之路的程序员都应该读一读,没有时间阅读全书的话仔细感受一下这篇书评也行。
当然我不是说你应该百分之百地照书上写的去做,聪明的程序员懂得活学活用。另外我们追求牛逼是指妇孺皆知的牛逼,不是只有牛逼程序员之间惺惺相惜的牛逼,明白?我觉得你还不明白。看下去你才能明白。
在这条光辉的牛逼之路的开始,有个前置条件是你写得一手好代码,基础不好就别装牛逼了,丢人。好代码的标准参见这本小册子。有了这个基础之后,剩下的就是训练牛逼意识了:
使用第三方框架并且,定制修改框架特性
代码要力求抽象,把概念和流程拆分、细化、再细化,然后熟练运用设计模式进行封装,复杂设计是牛逼的重要特征
注意在上述过程中保持好各部分逻辑的耦合关系——加强上一条的效果
牛逼代码都是简短的,新人才会把一行代码回车换行搞成三行,大牛的一行代码可以做五件事情
用二进制运算
使用有意义的命名,但请仔细斟酌你的表达。比如你有一个函数是在用户表中查找某人,
findSomeone
这种名字就不怎么样,感受一下parseUsers
的效果如果觉得起名太费心的话,更简便的办法是短名字,
pu(n,x,a)
不要写注释——请牢记在心:代码就是最好的注释。代码就是最好的注释。代码就是最好的注释!!
这里还有个进阶技巧,倘若你不巧写了注释,后来维护的时候更改了逻辑……那也是很好的
维护的更高段位是真正的想象力。比如分支跳转不符合预期的时候,在恰当的位置加上一个
undefined = true
,如何不令人拍案叫绝!
这个列表肯定还有很长,这里只是做一些示例。每一条可能都不是特别有效,但是它们组合起来将会威力无边,一不小心很容易伤及自身,使用务必谨慎——这也是本文开头就声明的:你得先有玩弄代码的本事,而不是被代码玩弄。
这样,你就写出来一个高级、复杂、牛逼的系统,最重要的效果是除了你没人搞得定。
产品经理、设计师、老板,甚至是跟你基本没有交集的财务总监,他们可能不会理解你作为一个10x程序员到底比平庸程序员好多少,好几倍几十倍,但是他们一定理解或者听说这个:你走了之后,新来的那些菜鸟没一个搞得定的。
这个,就是妇孺皆知。
Oh, One More Thing, 设想一下另一种样子,你忠实照搬了《代码整洁之道》里各种戒条,你像个苦行僧一样克制自己挥洒牛逼的冲动,你写出来的代码简单明了小清新——噗,你太可爱了,新来的实习生也能依葫芦画瓢改两下,呵呵,这种时候谁会记得你。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。