我已经阅读了自己的软件开发书籍,并且发现发现一本我想多次阅读的书籍非常罕见。
但是,有时我会发现一本书,每次阅读时都会教给我新的东西。 这篇博客文章是对这些稀有宝石的致敬。
现在,我毫不犹豫地向您介绍十本书,这些书在我的书架上都占有特殊的位置:
- 干净的代码:Robert C. Martin撰写的敏捷软件技巧手册,教给您三件事:如何编写好的代码,如何区分好的代码与坏的代码之间的区别以及如何将坏的代码转换为好代码。 这些是每个开发人员必不可少的技能。 这就是为什么您应该读这本书的原因。
- 设计模式:Erich Gamma,Richard Helm,Ralph Johnson和John Vlissides的可重用的面向对象软件的元素是一个真正的经典。 它为常见的设计问题提供了优雅的解决方案。 如果您想学习编写优雅的面向对象的代码的基础知识,这是您应该阅读的书。
- 领域驱动的设计:埃里克·埃文斯(Eric Evans )着《解决软件核心的复杂性》是一本面向想要了解如何将领域专家的知识转化为有用的领域模型的开发人员的书。 如果您发现经常找不到“业务逻辑”的自然位置,则应该帮自己一个忙,阅读本书。
- Joshua Bloch撰写的Effective Java是一本无需介绍的书。 如果您想编写更强大的Java代码,则有78种理由来阅读这本书。
- 有效的单元测试:Lasse Koskela的Java开发人员指南是Lasse Koskela的第二本测试书,它可以帮助您提高测试套件的质量。 阅读本书有助于我编写更简洁,更可维护的测试。 我想您可以说这本书帮助我认识到,如果测试没有表达每个测试的意图,那么它们就毫无价值。 我认为这是一个宝贵的教训,因此您也应该阅读这本书。
- Martin Fowler撰写的企业应用程序体系结构模式的标题很“无聊”,但您不应该让它吓到您。 阅读本书可以使我更好地了解我每天使用的“企业”框架的基本构建模块。 如果您想了解自己的工具,则应该阅读这本书。
- 重构:Martin Fowler改进现有代码的设计是另一个永恒的经典。 它描述了40多种不同的重构,可用于改进现有代码的设计。 每个软件开发人员都应该具有良好的重构技能,阅读本书将使您更进一步地实现这一目标。
- SQL反模式:避免数据库编程的陷阱Bill Karwin写的这本书对使用关系数据库的所有开发人员都非常有用。 本书可帮助您避免最常见的设计反模式,查询反模式和应用程序开发反模式。 老实说,我必须承认我犯了本书中描述的一些错误。 这就是为什么我非常高兴能阅读并了解如何避免将来犯同样的错误。
- Markus Winand解释的SQL性能承诺将教会您有关SQL性能所需的一切知识。 这是一个非常大胆的标语, 当我意识到这本书信守诺言时,我很高兴。 我认为您应该读这本书有两个原因:证明关系数据库并不慢,并且它解释了如何使SQL查询尽可能快地进行(它们可以比您想象的要快)。
- 测试驱动:TDD和验收Lasse Koskela编写的Java开发人员TDD是我读过的第一本测试书,这就是为什么它在我心中占有特殊的地位。 这是对TDD的很好的介绍,但是即使您不是TDD的狂热者,您也可以从本书中学到一些测试技巧。 这就是为什么这本书是您书架上很好的补充。
该列表基于我的(主观)观点,您的列表很可能看起来会完全不同。 如果您认为我错过了应该在此列表中的书,请在评论部分分享您的意见。
翻译自: https://www.javacodegeeks.com/2014/04/10-books-every-java-developer-should-read.html