来源:JavaEdge

掌握软件架构的道路是一段永无止境的旅程。沿途有无数的优秀资源,这正是问题所在。资源的数量和种类之多,使得这段旅程充满了随意性,最糟糕的是,这甚至可能变成徒劳的努力。当你浏览大量关于软件架构的材料时,可能会感到不知所措。
此外,许多你找到的内容质量参差不齐,因为很多关于软件架构的内容是由和你一样的同行发布的,他们以自己的方式试图理解这段旅程。
关于软件架构的资源有很多种,包括视频、博客、教程、书籍、课程和其他类型的内容,但它们的质量各不相同。有些很优秀,有些有一定的价值,而另一些则误导且完全错误。
因此,我在下面汇总了一份高质量的资源清单,旨在帮助那些希望成为软件架构师的开发人员和希望提升自己的现任软件架构师。希望这能帮助你在通往软件架构师大师的道路上设定正确的方向。
这些资源——既有免费的,也有付费的——讨论了软件架构的不同方面以及软件架构师在行业中的角色。
这份清单的目标是为软件工程师成为软件架构师提供一个路线图,或帮助现有的软件架构师提升他们的角色。即使你已经是经验丰富的软件架构师,这些资源也很可能对你有帮助,弥补任何知识空白、寻找清晰的思路或获得新鲜的见解。

我按照逻辑顺序从上到下组织了这份路线图,以便每个步骤能够建立在之前的步骤之上。当然,这终究是一份不相关资源的集合,所以我希望我组织的顺序是合理的。让我知道你的想法
对于下面的每一项资源,我会注明它是免费还是付费的。你还会看到该资源的详细内容和它如何帮助你在成为软件架构师(或成为更成功、更有成就感的软件架构师)的道路上前进。
事不宜迟 —— 软件架构师资源——通往成功的路线图!?
1 打下基础
? 每个开发人员都应该了解的五件关于软件架构的事 • Simon Brown • GOTO 2020
为什么有用: 清晰直观地解释了软件开发人员需要了解的一些软件架构的关键点。
? 类型: 视频
?免费: 是
? 软件架构应该是什么样子
为什么有用: 更多关于正确软件架构基础的见解。
? 类型: 视频
?免费: 是
? “够好”的架构 • Stefan Tilkov • GOTO 2019
为什么有用: 涉及软件架构的目的是为了解决实际问题。追求“完美架构”违背了这一目的。
? 类型: 视频
?免费: 是
? 最低可行架构 • Randy Shoup • YOW! 2022
为什么有用: 最低可行架构(MVA)的概念不像最低可行产品(MVP)那样经常被讨论。然而,理解其对我们作为软件架构师所做的一切的重要性是至关重要的,特别是在业务和技术对齐方面。这个概念与上文的“够好”架构理念有关。
? 类型: 视频
?免费: 是
? 我希望早些知道的软件架构技巧
为什么有用: 探讨了一些成功的软件架构师希望在职业生涯早期就知道的事情。这是一段价值巨大的个人见解和经验分享。
? 类型: 视频
?免费: 是
2 探索深入
? 成为软件架构师的路线图
为什么有用: 为成为软件架构师提供了清晰的步骤和指南。
? 类型: 视频
?免费: 是
? [向软件架构师的进阶指南](https://www.amazon.com/Soft Skills-Survival-Guide-Software/dp/0134766324)
为什么有用: 提供了成为软件架构师所需的广泛技能和知识。
? 类型: 书籍
?免费: 否
? 架构模式
为什么有用: 介绍了架构模式,这是设计复杂软件系统时的基础。
? 类型: 书籍
?免费: 否
? 架构师的硬技能和软技能
为什么有用: 探讨了架构师所需的硬技能和软技能的平衡。
? 类型: 书籍
?免费: 否
3 实践与应用
? 架构师的实践指南
为什么有用: 提供了实际应用的指导和实践案例。
? 类型: 书籍
?免费: 否
? 架构模式大全
为什么有用: 提供了广泛的架构模式和实践案例。
? 类型: 书籍
?免费: 否
通过这些资源,你将逐步掌握成为一名优秀软件架构师所需的知识和技能。祝你在这段充满挑战的旅程中好运!?