这些书籍涵盖了构建现实世界软件的实践 - 从清晰代码和设计模式到系统架构以及团队合作的软技能。
代码质量与工艺
关于编写干净、可维护代码的书籍。
| 书籍 | 作者 | 年份 | 级别 | 描述 |
|---|---|---|---|---|
| 干净的代码 普伦蒂斯霍尔 | 罗伯特·C·马丁 | 2008 | 初学者-中级 | 关于代码级工艺的最具影响力的书籍。有时有争议,但必读。 |
| 代码大全 第二版,微软出版社 | 史蒂夫·麦康奈尔 | 2004 | 中级 | 软件构建实践的最全面指南。 |
| 务实程序员 20周年纪念版,阿迪森-韦斯利 | 大卫·托马斯,安德鲁·亨特 | 2019 | 初学者-中级 | 来自经验丰富开发者的提炼智慧。新软件工程师的必读书籍。 |
| 软件设计哲学 第二版,Yaknyam | 约翰·奥斯特豪特 | 2021 | 中级 | 斯坦福教授奥斯特豪特对复杂性和设计的深思熟虑的看法。 |
设计模式与架构
软件设计模式和架构原则。
| 书籍 | 作者 | 年份 | 级别 | 描述 |
|---|---|---|---|---|
| 设计模式:可重用面向对象软件的元素 阿迪森-韦斯利 | 埃里希·伽玛,理查德·赫尔姆,拉尔夫·约翰逊,约翰·弗利西德斯 | 1994 | 中级-高级 | ‘四人帮’(GoF)书籍 - 原始设计模式目录。 |
| 企业应用架构模式 阿迪森-韦斯利 | 马丁·福勒 | 2002 | 高级 | 福勒的数据和领域建模企业模式目录。 |
| 干净架构 普伦蒂斯霍尔 | 罗伯特·C·马丁 | 2017 | 中级 | 叔叔鲍勃对软件架构原则的看法。 |
| 领域驱动设计 阿迪森-韦斯利 | 埃里克·埃文斯 | 2003 | 高级 | DDD圣经 - 复杂商业领域的战略设计。 |
测试与重构
测试驱动开发、测试策略和重构。
| 书籍 | 作者 | 年份 | 级别 | 描述 |
|---|---|---|---|---|
| 重构:改善现有代码的设计 第二版,阿迪森-韦斯利 | 马丁·福勒 | 2018 | 中级 | 权威的重构目录。维护遗留代码的必备书籍。 |
| 有效处理遗留代码 普伦蒂斯霍尔 | 迈克尔·费瑟斯 | 2004 | 中级-高级 | 驯服未经测试的遗留代码库的不可或缺指南。 |
| 测试驱动开发:通过示例 阿迪森-韦斯利 | 肯特·贝克 | 2002 | 中级 | TDD的发明者所著。简短、易读且有影响力。 |
| xUnit测试模式 阿迪森-韦斯利 | 杰拉德·梅扎罗斯 | 2007 | 高级 | 全面的测试模式和反模式目录。 |
系统设计与分布式系统
大规模系统、分布式架构和性能。
| 书籍 | 作者 | 年份 | 级别 | 描述 |
|---|---|---|---|---|
| 设计数据密集型应用 O'Reilly | 马丁·克莱普曼 | 2017 | 中级-高级 | 关于数据系统和分布式系统设计的最佳现代书籍。后端工程师的必读书籍。 |
| 站点可靠性工程 O'Reilly | 贝茜·贝耶,克里斯·琼斯,詹妮弗·佩托夫,尼尔·理查德·墨菲(编) | 2016 | 中级 | 谷歌在规模上运行生产系统的方法。在线免费。 |
| 发布它! 第二版,务实书架 | 迈克尔·T·尼戈德 | 2018 | 中级 | 包括断路器和舱壁的生产就绪软件模式。 |
过程、团队与职业
软件开发过程、管理和软技能。
| 书籍 | 作者 | 年份 | 级别 | 描述 |
|---|---|---|---|---|
| 神秘的人月 周年版,阿迪森-韦斯利 | 弗雷德里克·P·布鲁克斯 Jr. | 1995 | 中级 | 布鲁克斯关于软件项目管理的经典论文。自1975年出版以来仍然相关。 |
| 人力资源:高效项目和团队 第三版,阿迪森-韦斯利 | 汤姆·德马科,蒂莫西·利斯特 | 2013 | 中级 | 关于软件开发人性化方面的基础书籍。 |
| 加速 IT革命出版社 | 妮可·福斯格伦,杰兹·汉布尔,基因·金 | 2018 | 中级 | 关于什么使软件团队高效的基于数据的研究。 |