程序员高手修炼之路

来源:java认证发布时间:2012-11-12 12:48:55java认证视频

  正在做Andy Hunt和David Thomas的《程序员修炼之路》英文注释版(The Pragmatic Programmer)的最后审稿工作。

  这本书虽然很早就读过一些,但现在再读,仍然暗暗称奇。作者一定是在长期工作中养成了记笔记的习惯,才能写出这样旁征博引、涵盖丰富的书来。

  全书是按条目方式组织的,多入口,可以随意挑出一条感兴趣的,开始阅读,感觉非常适合你在dead moment(无所事事的时候)阅读。其中一条感触较深,名字叫“Your Knowledge Portfolio(知识资产)”。

  这里的Portfolio原意是指投资组合,比如你有了一些钱,存一点在银行,买一点股票,买一点基金,买一点房产,买一点保险之类。总之是不要把all your eggs放在一个篮子里,减少风险,并且保值增值。

   作者将这一含义移植到软件开发上来。显然,大家从事的软件开发是一个典型的高风险变化快的行业。如何使你所拥有的知识保值增值,的确是需要精心经营的。

  作者提出的经营之道是:——Invest Regularly,不断投资,积少成多。

  ——Diversity,扩大知识面,多元化,减少风险,增加潜力。

  ——Manage Risk,控制风险,这点与上呼应,要注意结合学习短线和长线技术。

  ——Buy low,sell hign,低买高卖,寻找潜力股。

  ——Review and rebalance,多总结。

  这些对于现在全民买基金、炒股票的年代,当然都不需过多解释了。

  作者提出的8大目标,可能更有实践意义:——每年学习一种新语言。

  不同语言能够以不同方式解决同样的问题。而学习各种不同的方法,能够扩宽思路,打破思维局限。学习不同的语言将改变和丰富你思考问题的方式。

  而且,现在学习新语言比过去要简单得多了。编译器、开发环境、文档都可以自由从网上找到。

  如 果你熟悉静态语言,不妨去尝试一下动态语言,Java程序员比较好的选择有Ruby、Groovy和JavaScript;Windows上开发的程序员 可以尝试一下微软的PowerShell;从事Web开发的,可以选择PHP、Ruby;从事游戏开发的,可以选择Lua.此外,Python也是一个值 得认真考虑的选择。当然,还有编程范型(paradigm)的切换,从过程到面向对象,从面向对象到函数式(很好的选择是代表了并发时代的 Erlang)、逻辑式(以Prolog为代表)。

  ——每个季度读一本技术图书。

  养成习惯以后,每个月读一本。

  同样,阅读兴趣也应该广一些,多元化。

  ——还要阅读非技术图书。

  不要忘了软件是人在使用,多多了解人这方面的事情。

  ——参加技术课程。

  可以是学校的,也可以是培训班或者技术会议上的。

  ——加入本地的程序员组织。

  不仅是带着耳朵去听,而是要积极参与。“与世隔绝对职业生涯是致命的。” 去发现公司之外的朋友。

  ——实验不同的环境。

  如果你工作中只使用Windows,那么在家里用用Unix/Linux.如果你只用makefile和编辑器,尝试一下IDE,或者反之。

  ——与时俱进,订阅行业杂志。

  ——上网,阅读有价值的文章、网站……

  最后一条现在已经越来越重要,很大程度已经取代了上一条。现在国外主流的技术杂志,不少已经完全开放在网上,包括书中推荐的Dr. Dobb's Journal.

  注释者还建议加上一条:——多做笔记,建议采用Wiki或者blog的形式。

  此外,作者还建议要利用各种机会学习,多与高手交流,利用各种时间。而且最重要的是,学习中,对所读所闻要批判地分析和思考。

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答