排版 / 以码为梯
文章字数 / 2650
如何成为架构师系列文章(译文)的第七篇,欢迎转发、评论、收藏
成为软件架构师的路径
软件架构中的利益相关者
软件架构师类型
系统架构中的非功能性需求有哪些
如何编写软件架构文档
软件架构相关证书
在任何领域想要成功都需要丰富的实战经验和优秀的理论背景,软件架构师领域也不例外。实战经验只有通过参与实际项目才能获取,但是理论知识却是可以在任何地方就能获得提升的。
开发理论和软件架构师理论最大的不同就是后者的知识过时的比较慢。所以,如果你找到了一个2000年代的资源,它可能仍然还是有用的。
我建议你通过阅读一些书籍来开始了解软件体系结构的理论,这篇文章中推荐了一些最合适的书籍。
这份书籍列表中不包含以下两类:
总的来说,我对那些能让你在短时间内成为专家的书持怀疑态度,特别是涉及架构领域时。在没有上下文的情况下讨论架构设计是不合理的,有些时候即使很小的细节都会影响决定,但是在没有上下文的情况下,这些细节是不能被感知的。那些标题为“某个领域内N个最佳实践”的书籍,都只是包含一些正常情况下该做的事情,对架构设计没有任何帮助。
如何对列表里面的书籍进行排名?
软件架构师理论书籍
Software Architecture in Practice (3rd Edition) (SEI Series in Software Engineering)
这是推荐列表中的第一本书籍,也是在软件架构师方面你应该阅读的第一本书。这本书描述了一些基本概念:
它还阐明了如何以敏捷的方式和在不断变化的需求中处理架构。例子和通俗易懂的文风是本书的优点。
Essential Software Architecture
了解软件架构基本理论的另一本书,很好地概述了软件架构师的工作。这本书描述了成为一名软件架构师所需的基本技能,包括了思考问题的方式和各种技术的知识。此外,书中还对软件架构的质量属性和其他领域进行了描述。
Patterns of Enterprise Application Architecture《企业应用架构模式》
这是一本非常棒的书籍,书中描述了企业开发者在工作中会遇到的各种各样的问题,并给出问题的解决方案,值得一提的是,这些解决方案适用于不同的技术栈。然而,相对于解决方案架构师和企业架构师,这本书更适合开发者或者系统架构师,因为这本书中描述的都是偏底层的问题和对应的解决方案。
Domain-Driven Design:Tackling Complexity in the Heart of Software
《领域驱动设计:软件核心复杂性应对之道》
对于同一个对象“汽车”,在文档中使用“car”表示,在后端数据库中使用“automobile”,在客户端中使用“vehicle”。对于上述情况,如果你不理解为什么这样处理是致命的,那么这本书正是你需要的。此外,这本书还提供了如何通过沟通获取工作概念模型并且在所有的利益相关者之间协调这个模型的有用指南。
Stakeholder Theory: The State of the Art
有关软件架构中的设计和图表的书籍
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development
《UML和模式应用》
Documenting Software Architectures: Views and Beyond
这才是编写软件架构文档领域的真正经典。它是回答从“我为什么需要文档?”到“如何记录SOA?”这些问题的最全面的指南。此外,它还解释了各种文档技术(UML、AADL 和 SysML)以及现实生活中的示例。
Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives
Designing Software Architectures: A Practical Approach (SEI Series in Software Engineering)
其他关于软件架构的书籍
Software Estimation: Demystifying the Black Art
Site Reliability Engineering《SRE:Google运维解密》
这本精彩的书描述了 Google 如何支持他们的生产环境。如果你没有听说过SRE,那么这本书肯定适合你。
Enterprise Architecture As Strategy: Creating a Foundation for Business Execution
Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
《数据密集型应用系统设计大数据分布式系统》
如果觉得文章对你有帮助,记得关注我,并转发,分享该文章,让更多的人看到这篇文章。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!