读《顶级程序员的心得 Coders at Work 》系列有感
今早浏览了《顶级程序员的心得 Coders at Work 》系列(http://www.cnblogs.com/xinz/archive/2009/12/23/1882457.html),今晚又再读了一遍,写篇总结,反省自己。
首先,第一篇提到了自己几点没有做到的:
1 写一个大数的类,可以实现乘除(自己只写过结构体的,而且除法还不是自己的。。。)
2 读过TAOCP(闻其名,却没读过)
3 最得意的代码,(目前都没有啥代码可以让我称得上得意)
4 有很强的文字表达能力和沟通能力(非常有待提高)
5 程序要可读,可维护,高效,此外,提到了一个《The Algoirhthms in a Nutshell》里面提到的不要过早的进行优化,要首先保证程序正确
6 优先程序员精通一种语言后能触类旁通,学好所有语言(与我一贯的想法有较大出入,一直以来都是坚持c++的。。。)
7 a good memory
第二篇:
1 漂亮的代码:不是没有明显的bug,而是明显没有bug,(好震撼。。。境界显然不一样了)
2 “只要懂得我需要的,就可以开始干活了”, 而不是“我得完全理解某个领域,才能开始””,这点我深有体会,譬如学算法,过去我总以为一定要先啃完离散,线性代数,概率论,具体数学等等,然后才开工,最后往往因为迫在眉睫的任务而搁浅手头上的数学任务,去学算法,结果显然是远远落后于别人,并且学过的很快也忘了;又譬如:大作业,经常都是以为要准备足够充分,才开工,结局是怎么准备都觉得不充分,最后反而连完成一个最低要求的目标都觉得时间紧蹙。
3 10% 的时间用来交流是很重要的,但是如果大部分时间都用来结对,那效率不会太高,这与邹欣先生提到的似乎颇有出入,毕竟才10%(难道是我对XP的理解还过于肤浅。。。,想来还是得实践出真知。。。)
4 UML不是必要的东东
第三篇:
1 avoid micromanagement. if you’re worried and you’re insecure, and so you’re feeling like you hve to nail everything down.避免微观管理,说的太好了,越是穷究根底,后果约会适得其反。
2 直觉,长期实践后的思维的一部分,(这个境界也是比较高了,不过现在已经有所体会)
3 Peter 认为优秀的程序员必须能在抽象思维 (world of symbols) 中得心应手的人。(学数据库有提到一个类似的概念,不过现在se里面看到,有待深究。。。)
4 所谓 "计算机科学" 不过是工程加上应用数学。
5 passion for technology (这个就不必解释了。。)
第四篇:
1 代码复杂的时候,要学好包装,avoid premature optimization(很经典的一个原则。。。上面讲过)
2 应聘者有没有刨根问底,好奇心, 准确的思维? 能快速地学习么? 是否对很多东西都有兴趣? 是否有很广泛的基础?
后感:
差距还是挺大的,过去感觉是技术不行,现在看来关键还是在思想层面上,感谢作者给了一个更高的角度让我看当前的缺陷。。。。
“只要懂得我需要的,就可以开始干活了 ”,不要太在意起点,多努力。