链接:https://medium.com/ki-labs-engineering/top-5-contemporary-software-engineering-books-8b5ca6a28e83
这五本书涵盖了多个领域,如软件设计和管理甚至涉及到“人员问题”,每一本书的推荐我都说明了为什么我认为你应该阅读这本书的原因。
1、《Software Design X-Rays》
本书这是我读过的关于软件工程的最重要的书之一。亚当·托恩希尔(Adam Tornhill)还有另一本书《Your Code as a Crime Scene》是关于代码分析和“代码健康”这一主题。
为什么你应该阅读这本书?
通过这本书,你将学习如何分析代码库,如何保持代码健康,以及如何组织团队创建更加可持续的工作。如果你是位负责任的软件工程师,架构师或工程经理,那本书一定要去阅读
较旧/类似的书籍
《Your Code as a Crime Scene》,此外本书某些部分和这些书的主题一样:《修改代码的艺术》、《重构》、《架构整洁之道》
2、《A Philosophy of Software Design》
本书介绍了John Ousterhout自己在各种大型系统上工作的经验以及他的斯坦福大学课程,将自己的教学方法和多年的系统开发经验相结合,以此探讨关于系统复杂性。如果有人让我推荐关于提高编码和设计技巧的书,那一定是这一本。
有趣的是,单元测试,测试驱动开发或敏捷开发等主题仅在其中一章中进行了简要讨论,该章节与本书的其余部分一样:充分论证,直接切中要害。查阅更多可点击:《当我读了《软件设计的哲学》……》
为什么你要读这本书?
《软件设计的哲学》的核心主题是简单性,因此,本书本身很容易理解,单单深度和浅层模块的章节就对得起本书的价格了,同时它还讨论了一些流行的实践方法,如OO设计模式以及关于代码整洁的小方法等。
较旧/类似书籍
《代码大全》、《编写可读代码的艺术》、《代码整洁之道》
3、《数据密集型应用系统设计》
为什么你要阅读这本书?
分布式系统是一个存在大量研究的领域,对该主题的讨论很容易成为一个学术问题,Kleppmann在保证深度的前提下以一种通俗易懂的方式向读者解释,和《Software Design X-Rays》有点类似,本书在实用性和学术性之间取得一个很好的平衡
较旧/类似书籍
《Somehow related: Designing Distributed Systems》、《 Building Microservices》、《企业应用架构模式》
4、《Developer Hegemony》
这本书可能是我读过的所有书中最独特的一本,不过我不会向初级软件工程师推荐这本书,虽然这本书写的非常好。它解释了公司结构、管理风格和职业阶梯背后的驱动力。
为什么你应该阅读这本书?
如果你是在金字塔式的公司结构中工作,那它会教你如何生存,如果你已经从事软件工程已经有一段时间了,你可能会在你的同事、领导甚至是公司政策上已经发现到一些现象,这本书它揭示了如何在不强迫别人的情况下,让事情朝着对你有利的方向发展
较旧/类似书籍
可能没有,或者是《人月神话》、《人件》、《项目百态 》
5、《The Manager’s Path》
作为软件工程师,你的经验越丰富,就越需要在管理和领导方面承担起更多的责任,经理的职业道路涵盖了从单个团队的工程领导到管理多个团队并代表公司的技术领导。这是一本关于科技公司的技术领导、管理和人员主题的实用而真实的书——没有戏剧化和肤浅的建议。
为什么你应该阅读这本书?
尽管这本书主要是关于工程管理的,但是对于软件工程师来说,这本书是很有价值的。你将了解团队功能障碍、项目管理以及软件开发过程中常见问题的解决方案。也许不是开创性的,但如果你只想读一本关于工程管理的书,我推荐这本书,因为它包含了许多实用和可行的建议。
较旧/类似书籍
《格鲁夫给经理人的第一课》、《Debugging Teams》、《人件》、《人月神话》
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!