如果你能回到过去,告诉自己在开发人员职业生涯的开始读一本书,你会读哪本书?

我希望这份清单是多样的,涵盖范围很广。

搜索:使用右上角的搜索框。要搜索当前问题的答案,使用inquestion:this。例如:

inquestion:this "Code Complete"

当前回答

正如很多人列出了头部优先设计模式,我认为这是一本非常好的书,我想看看是否有很多人知道一本名为《设计模式解释:面向对象设计的新视角》的书。

本书出色地论述了设计模式。本书的前半部分非常容易理解,其余章节只需要对已经涵盖的内容有一个坚定的把握。我觉得本书的后半部分不太容易理解的原因是,它涵盖了我作为一个缺乏经验的年轻开发人员所没有使用过的模式。

本标题还介绍了设计模式背后的概念,涵盖了Christopher Alexander在架构方面的最初工作,以及GoF在SmallTalk中首次实现文档模式。

我认为任何喜欢头部优先设计模式,但仍然觉得GoF非常枯燥的人,都应该看看《设计模式解释》,它是一个可读性更强的选择(尽管没有那么全面)。

其他回答

新图灵集合http://ecx.images-amazon.com/images/I/51HlYd-%2BRwL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU01_.jpg

真的是一本好书。对计算机科学最重要的领域有很高的品味。是的,CS !=编程,但这仍然对每个程序员有用。

应用UML和设计模式。

它帮助我设计模式,并在“UML as Sketch”的措辞中为我提供了一个对UML有意义的理由。也就是说,UML应该被用作系统的一个简要草图,这样你就不必向别人解释符号(他们要么已经知道UML,要么你给他们一本UML的书来读)。

Charles Wetherell的《程序员练习曲》,《更多的编程珍珠》(Jon Bently),

明确的软件工艺

可选文字 http://ecx.images-amazon.com/images/I/5186JKTDVWL._SL500_AA240_.jpg

这本书解释了很多关于软件工程、系统开发的东西。理解不同类型的产品开发之间的差异也非常有用:web VS收缩包装VS IBM框架。当人们构思瀑布模型时,他们的想法是什么?读了这篇文章,我们就会明白(希望如此)

我现在正在阅读敏捷软件开发,原则,模式和实践。对于那些对XP和面向对象设计感兴趣的人来说,这是一本经典的读物。

可选文字 http://ecx.images-amazon.com/images/I/519J3P8ANML._SL500_AA240_.jpg