因为同观,所以转载 http://gcoder.blogbus.com/
"
我又在招聘中看到这样的字眼。我没有n万行的编码经验,但我不是因为我没有这样的经验,而讨厌这样的要求,就算我有了n万行以上的编码
经验,我还是会讨厌这样的要求。以行数来衡量编码水平,就跟用行数来衡量诗人的才华一样。
人都有稚嫩期,诗人亦如此,但如果一个诗人写了那么几首诗之后,还那么稚嫩,那么他接着写下去,除了稚嫩以外,也不会有别的进步。程
序员也一样,一个人在写了千行(甚至百行)代码以后,编程的水平,也就定了。如果他不学习(看书,或者看别人写的优秀代码)那么他写
代码的水平也就那样了,除了让一些恶习更加顽固之外,不会有别的进步。此时我宁愿他没有写那么n万行代码,至少还有一定的可塑性。
有很多优秀的编程书(例如代码大全),这样的书看一本,比n万行代码要受益的多。有很多优秀的开源代码(例如nginx)这样的代码看一点
,也比n万行代码要受益的多。
我在实习的时候,开发彩票软件(跟股票软件一样,你明白我说的意思吧!)。如果我是个以行数论英雄的人,我会接着写下去。但是,行数愈
多,我反而愈不安,因为我看见了重复的代码,累赘的代码。于是,我花了两个星期重构了一下,代码行数减少了一半。我相信,老板更喜欢
看到重构后的,代码更少的版本。代码量少,至少意味着出错也会少。
正式工作以后,也接手过一些代码,我从来都是让它们的行数更少,而不是更多(甚至是再增加新功能的情况下)。管理复杂度是编程的第一
要务,任何使代码膨胀的行为都是增加了复杂度,而不是降低(至少做code review的时候,要多看很多代码)。
"
阅读(435) | 评论(0) | 转发(0) |