如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?
我希望这份清单是多样的,涵盖范围很广。
搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:
inquestion:this "Code Complete"
当前回答
我有几本对我有强烈影响的好书,但到目前为止我还没有在这个清单上看到:
唐纳德·诺曼的《日常事物心理学》。为他人设计的一般原则。这似乎对UI很有好处,但如果你仔细想想,它几乎在任何地方都有应用程序,只要有一个界面,除了原始开发人员之外的人就必须与之打交道;例如,一个API,并以这样一种方式设计接口,使其他开发人员形成正确的心智模型,并从API本身获得适当的反馈。
《软件测试的艺术》作者:Glen Myers。对测试软件的良好的、一般的介绍;对于程序员来说,阅读有助于他们像测试人员一样思考,即思考可能出现的错误并为此做好准备。
顺便说一句,我知道这个问题是“最具影响力的一本书”,但讨论似乎已经变成了列出供开发人员阅读的好书,所以我希望我列出两本好书而不是一本能得到谅解。
其他回答
这并不是对这个问题的直接回答,因为我觉得上面已经回答过了,然而,有一本书对我的编码方式产生了明显的影响,那就是《代码阅读》第1卷:开源视角。
可选文字 http://g.bookpool.com/covers/405/0201799405_140_30O.gif
再加上上面提到的那些伟大的事情:
企业应用程序体系结构模式
企业集成模式
问题是,“哪本书真正影响了您作为开发人员的工作方式?”毫无疑问,Jeff Prosise的《用MFC编程Windows》是对我作为开发人员的工作方式影响最大的一本书。它没有教会我“编程”的基础知识,但它为我和成千上万的其他开发人员打开了Windows平台开发的世界。
在MFC开发之前,我曾经用“Petzold风格”写过一些Windows代码。我很快就决定,作为开发者,我们不值得在Windows平台上费心。当Prosise出版了他的MFC书籍时,我意识到(以及其他成千上万的非windows程序员)我可以创建一个简单易用的界面,用户不仅可以理解,而且实际上喜欢使用。我如饥似渴地读着这本书,在里面做了很多笔记,翻了很多角,最后我买了第二本。
Prosise,杰夫。用MFC第二版编程Windows。 微软出版社1999 ISBN: 1-57231-695-0
管理千兆字节是思考繁重的信息工作的经典。
由于上面提到的许多原因,这是在“头部优先设计模式”和“Perl测试:一个开发人员的笔记本”之间摇摆不定,对于任何想要编写可维护代码的Perl程序员来说,它都应该是一本圣经。