欢迎来到天天文库
浏览记录
ID:20255091
大小:32.50 KB
页数:5页
时间:2018-10-09
《软件高手是这样练成》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件高手是这样练成的上一篇/下一篇 2007-02-0615:22:49/个人分类:心情日志查看(98)/评论(3)/评分(0/0)中国人大都喜欢用武侠小说来比较软件开发,但是在实战武功中,只有葵花宝典才是最厉害的,也只有掌握了葵花宝典,才能称为“不败”。A"JvKMlD:`0L0Sn'Re*jN08E(e,r}^%y0 但什么才是软件开发的葵花宝典?3[z/Y/UAe4D0爱好者博墅/m$NpJj!B 让我们先从一些现象出发。我们的前提是,软件开发是一项智力密集型劳动。对于智力密集型劳动,我们观察到的
2、现象是,个体的表现差异很大,团队的表现差异很大,组织的表现差异很大,国家的表现差异很大。这不象体力占主要的劳动,象百米王跑百米的速度也仅比我快50%。但在棋类运动中,一个高手可以车轮战数位低手,而且毫无例外地将他们一一击败!爱好者博墅z1b/Bi*JL?'Q爱好者博墅'{HA*Sgr!B)N(Qkq"V 这些智力运动员表现出的特点是,计算精确而且速度快。其行为很象东方不败。虽然关于葵花宝典的传说很多,但最准确的描述只有一个字“快”。东方不败已经快到了吓人的地步。就象卡斯帕罗夫已快到了深蓝的地步。IF0r?j
3、;z"t0爱好者博墅l#f6C@"[1LO 有一则关于物理学家玻尔的轶事,有一次玻尔在普林斯顿大学听两个年青教授演讲他们的工作成果。期间玻尔突然发言说,如果照你们的研究算下去,会得到一个很有意思的推论。结果两个年青教授回去计算了两天,果然得出了同样的结论。玻尔是如何做到这样快的?爱好者博墅q&WY2z5bZ+
4、6v"k?-DB~"X0 在软件开发中,我们同样注意到这样一种高手,他们可以每天写出一千行左右的高品质代码。他们可以运用已有的一些软件包,迅速完成一个新的产品。他们可以在很短的时间内,学会一项新的程序语言或是
5、新技术。他们表现出一种神奇的速度。爱好者博墅;z(`l[L)vNjf]]2viG'O+Ve0 在武侠小说中,所有的高手都有一些凡人不能企及的表现。象张无忌学太极,用龙爪手击败龙爪手名家;乔峰用太祖长拳击败天下英雄;姑苏慕容以其人之道还治其人之身,令狐冲一剑剌瞎十几双眼睛等等。我认为,之所以他们能做到这样,关键是在于他们快。2gZi3I&rk&Fz0爱好者博墅ZrM.V9Iy0p
6、:S_ 快并不意味着不准或品质差。快与品质并不矛盾。EWmBnl1Q/Hi.C0
7、Iv_CD0 高手
8、的快,其实包含着很高的品质在其中。如果你因为高手的快,就质疑其品质,那就相当于在问:东方不败出手那么快,会不会刺不准?东方不败并不满足于刺死对手,他会在对手身上刺朵花。他把杀人变成了艺术。准确来说,他真正的兴趣不在杀人,而在于艺术。:Qe&B+adic0爱好者博墅(P3zD8p#xV8`xw 退一步说,就算东方不败第一击有点偏差,他稍作修正后,马上跟上的第二第三击,也会击中他想击中的地方。在武功差的对手剑还没拨出来的时候,他已杀死对方并刺上了一朵花。爱好者博墅
9、J&[d1P)Zf2[/AN#I3Ys1U#f0 所以
10、真正的软件高手,他并不满足于他的代码能有效地工作了,他认为编程是艺术,并醉心于其中。在低手能写出一个版本的时间里,他已经写出了第十版。其品质当然不可同日而语。就象一个九段棋手,在给定的时间里,他能计算十种可能,并将每种可能计算到100手之后,从中选择一种最有利的下法。低手岂有苟全的机会?爱好者博墅X]#Tk2z]#I^o^$ojDC5g0 高手写软件总是不停地在重构(refactoring)。高手喜欢迭代式开发。高手说,增量就是打补丁,迭代就是推倒重来。对于软件这种东西,写一遍它可能ok(做到这一点也不容易),写十遍就是一
11、个伟大的产品,再多写一遍它就更伟大些。爱好者博墅"x]J2nb.X7D}#E1@bNo"x2Hy(j0 高手快的诀窍在于他很熟悉各种东西。高手看书很快,因为每一本新书里,值得他好好看的新技术只有一两章的内容。他能迅速看完,并准确领会这本书的中心思想和价值。而对于一个新手,每句话都是新的,他都需要去理解,每一段例子,他都需要去试。爱好者博墅(V#nWpyzpX$W8Jh?w*nr0 很少看到一种100%全新的技术或理论。就象javalanguagespecification里说的,java没有使用任何新
12、技术,用的都是业界久经考验的技术。对于高手来说,那些技术都是他所熟悉的。自然,很快他就从一个c++高手变成了java高手。如果一个编程新手学java,学两年也不如一个高手学两个月的。高手学新东西快。爱好者博墅@-D)IlOB$
此文档下载收益归作者所有