如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
当前回答
托马斯·弗里德曼的《世界是平的》。
要想在编程方面取得卓越的成就,需要投入大量的精力和持续学习的精神,这与医学或法律专业不相上下。它所支付的工资只是这些职业的一小部分,更不用说那些进入金融业的数学高手了。编写代码的工资也在下降,因为在大多数经济体中,这是一个对聪明人和自律者来说相对容易进入的职业。
编程已经被侵蚀到比管道工作还便宜的地步。管道不能“外包”。你不需要每隔一年花2395美元参加一次专业管道工大会,就能获得一套全新的管道技术,这需要你花一年的时间来学习。
如果你生活在北美或欧洲,又年轻又聪明,编程并不是一个理性的职业选择。当然,涉及编程的业务。学习商业,了解足够多的编程知识来完善你的废话探测器:太棒了。但是把你大部分的精力都投入到掌握库、数据结构和算法上呢?只有当编程对你来说不仅仅是一种经济选择时,这才有意义。
如果你热爱编程,并因此打算把它作为你的职业,那么你就有必要冷静地认识到,这些力量正在并将继续使它成为一个越来越难谋生的职业。《世界是平的》不会教你如何给变量命名,但它会让你花6到8个小时沉浸在已经到来的经济现实中。如果你能读懂它,而且不害怕,那就去买《代码完成》吧。
其他回答
《Java思维(模式)》,Bruce Eckel著
界面耻辱大厅仍然是值得一看的经典。这个网站详细列出了大量的界面设计失误,非常有趣。最初的iarchitect.com网站已经不复存在,但其他人已经在自己的网站上重新建立了居屋计划。
Pragmatic程序员做得很好。然而,当我刚开始工作的时候,真正影响我的是:
Windows 95系统编程秘密
我知道——它听起来和看起来有点俗气,可能有点过时了——但这是基于作者(Matt Pietrek)使用他自己的工具(随书提供的代码)调查的Win95内部结构的一个很棒的解释。请记住,这是在整个开源事件之前,微软仍然对发布内部文档非常谨慎——更不用说源代码了。 里面有一些引用,比如“如果你正在解决一些问题,遇到了一些症结,那么你需要停下来,真正深入地研究它,真正理解它是如何工作的”。我发现这是一个非常好的建议——尤其是现在,当你经常有图书馆的源代码,可以去看看。 它也激励我享受深入研究系统工作原理的乐趣,这在我的职业生涯中被证明是非常宝贵的。
哦,我还想介绍一下Don Box对。net内部的解释。
Amiga ROM内核手册:)
这里有两个我没有看到提到的: 我希望我能更早地阅读Koenig和Moo的《c++反思》。正是这本书让我对OO概念产生了真正的兴趣。 我推荐Michael Abrash的《代码优化禅宗》(Zen of Code Optimization)给那些打算在90年代中期开始编程生涯的人。