介绍
如果您已经有一段时间从事软件工程并且喜欢阅读书籍,那么您可能会遇到一些经典著作,例如Code Complete,Refactoring,The Mythical Man-Month或Peopleware 。 尽管它们仍然很棒,但在本文中,我整理了一份我认为是我个人排名前5位的最新书籍清单。当然,有些新近度存在偏差,因此请将该清单视为2017年至2018年的快照。
这些书涵盖了多个领域,例如软件设计和管理或“人员主题”。 每个简短的评论都包含有关为什么要阅读它以及较旧或类似书籍的小节。
#1软件设计X射线
2018,亚当·托恩希尔(Adam Tornhill)
软件设计X射线
软件设计X射线具有8个评分和4个评论。 乔说:哦,天哪。 自从我读了一本技术书以来已经有一段时间了…… www.goodreads.com
遵循您的代码作为犯罪现场之后, Adam Tornhill的新书讲述了代码分析和“代码健康”这一令人着迷的主题。 这是我读过的有关软件工程的最丰富的书籍之一。 作者演示了多种技术(主要基于版本控制系统中的数据),用于识别热点,复杂性趋势,耦合或重构机会。 所有材料均配有示例,参考文献和一些引人入胜的可视化文件,以适当地备份。 阅读本书之后,您可能会问自己:如何最好地将新知识应用和集成到工程流程中,以及如何使同事相信这些方法的价值? 幸运的是,这里有工具支持,所以从小处着手并不断改进…
为什么你应该读它
您将学习如何分析代码库,如何保持代码健康以及如何组织团队最终创建更具可持续性的工作。 如果您以软件工程师,架构师或工程经理的身份对质量负责,则必须阅读。
较旧或类似的书籍
您的犯罪现场代码 。 本书的某些部分与以下内容有关: 有效使用旧版代码,重构,干净的体系结构
#2软件设计理念
2018,约翰·奥斯特豪特(John Ousterhout)
软件设计哲学
软件设计哲学有76个评分和16条评论。 塞萨尔(César)说:为了给…评分,我有百感交集 。www.goodreads.com
该书介绍了John Ousterhout自己在各种大型系统上的工作经验以及他的Stanford课堂上的见解,在他的学生中,他的学生通过代码审查过程来迭代地设计程序。 这是我推荐给有人问我如何提高编码和设计技能的书。 您将学到许多启发式方法和“危险信号”,旨在使您的代码简单易懂。
有趣的是,诸如单元测试,测试驱动的开发或敏捷开发之类的主题仅在“软件趋势”一章中进行了简短的讨论,该章的内容与本书的其余部分类似:经过充分论证并指向重点,但始终承认这是当然,关于好的设计并不是硬道理。
为什么你应该读它
软件设计哲学的核心主题是简单性 ,因此,本书本身也易于理解。 仅有关深度和浅层模块的这一章值得一本书。 它还挑战流行的做法,例如“ 清洁代码”提倡的某些策略(小的方法和类等)或某些OO设计模式。
较旧或类似的书籍
代码完整,可读代码的艺术,干净代码
#3设计数据密集型应用程序
2017年,马丁·克莱普曼(Martin Kleppmann)
设计数据密集型应用
设计数据密集型应用程序有967个评分和136条评论。 埃姆雷(Emre)说:我认为这是一本… www.goodreads.com
通过诸如云原生应用程序,微服务架构或NoSQL数据存储之类的各种趋势,对分布式系统和数据的特性进行推理几乎已成为必然。 研究人员和软件工程师Martin Kleppmann所著的这本书解释了数据驱动应用程序的理论和实践,从而立即传达了作者具有对该领域深厚知识的印象(毕竟,只有当您对某个主题有深入了解时, ,您可以很好地教它)。
为什么你应该读它
分布式系统是一个存在大量研究的领域,讨论该主题可以很快变成学术性的(请考虑一致性,共识性等)。 然而,马丁·克莱普曼(Martin Kleppmann)以非常清晰和平易近人的方式写作,却不牺牲深度。 与软件设计X射线类似,这本书在实用和学术之间取得了恰到好处的平衡。
较旧或类似的书籍
某种程度上相关: 设计分布式系统,设计微服务,企业应用程序架构的模式
#4开发者霸权
2017年,埃里克·迪特里希(Erik Dietrich)
开发者霸权
Developer Hegemony具有96个评分和13条评论。 马克说:看完这本书后,我感到有点脏。 太棒了…… www.goodreads.com
这本书可能是清单中最独特的书,与迄今为止我读过的其他所有书都不一样。 我不建议在软件工程师的职业生涯初期就使用它,因为人们对公司和启动软件开发中的政治和动态有很多冷嘲热讽的态度。 这是一本我不能拒绝的书,因为它写得很好,并解释了我们公司结构,管理风格和职业阶梯背后的驱动力。 如果您决定阅读它,则服用了红色药丸……
为什么你应该读它
如果您喜欢在金字塔状的公司结构中工作,那么它将向您展示如何玩游戏 。 如果您从事软件工程已有一段时间,那么您可能会在同事,老板和公司政治中认识到很多上述行为。 虽然这本书可能会让您失望,但同时也揭示了如何在不操纵他人的情况下改变事物以发挥自己的优势(没有破坏者……)
较旧或类似的书籍
可能没有, 在某种程度上也许是《神话般的人月》,《 Peopleware》,以及《 肾上腺素》迷和模板僵尸
#5经理之路
2017年,卡米尔·弗尼尔(Camille Fournier)
经理之路
管理者之路拥有1,005评级和113条评论。 叶夫根尼(Yevgeniy)说:这本书很好地引导了您…… www.goodreads.com
作为软件工程师,您越有经验,越有机会承担更多的管理和领导职责。 经理之路涵盖了从单个团队的工程主管到管理多个团队以及代表公司技术主管的整个过程。 这是一本关于技术领导力,管理和科技公司中人事主题的务实而真实的书,却没有其他“人事”书中经常出现的生动而肤浅的建议。
为什么你应该读它
尽管本书主要涉及工程管理,但对于坚持技术路线的软件工程师而言,这本书无疑是有价值的。 您将了解团队功能障碍,项目管理以及软件开发过程中常见问题的解决方案。 也许不是开创性的,但是如果您只想读一本有关工程管理的书,我建议您读一本书,因为它包含了许多诚实而可行的建议。
较旧或类似的书籍
高产出管理,调试团队,人员软件,神话般的人月