程序员必读之强调实践、注重实效、轻量级、面向开发者的软件架构

224 阅读4分钟

通常,人们对软件架构师持两种错误的看法。有人认为软件架构师是-一种高高在上的职位:有人认为软件架构师完全不懂开发,只是会画条条框框的指挥家。本篇文章将打破这些传统的认知,模糊软件开发和架构在流程中的界限,进而为软件架构正名。本书是一本强调实践、注重实效、轻量级、面向开发者的软件架构指南。

如果你是一名想成为软件架构师的程序员,那么本书就是为你准备的。

你将从中学到:

  1. 软件架构的本质;
  2. 为什么软件架构角色应当包含编码、指导与合作:
  3. 开始编码前真正需要思考的事情;
  4. 如何用简单的草图让你的软件架构可视化;
  5. 为软件生成文档的轻量方法;
  6. 为什么敏捷和架构并不冲突;
  7. “恰如其分”的预先设计是什么意思;
  8. 如何通过风险风暴来识别风险。
  9. 关于软件架构,每个开发者都应该知道的五件事

为了帮助你大致了解本书的内容,这里有每个开发者都应该知道的五件有关软件架构的事。

1.软件架构不是大型预先设计

软件架构历来被认为跟大型预先设计和深布式项目有关,团队要周全地考虑软件设计的所有细节,然后才开始编码。

软件架构就是关于软件系统的高层次结构,以及你如何理解它。

它是影响软件系统形态的重要决策,而非理解数据库每个字段应该有多长。

2.每个软件团队都需要考虑软件架构

不论产品的大小和复杂性,每个软件团队都需要考虑软件架构。

为什么?简单地说,尚未发生的坏事往往都会发生!如果软件架构是关于结构和愿最的,不考虑这一点就可能产出结构糟糕,内部不一致的软件系统。

这样的软件系统难以理解和维护,很可能无法满足-些重要的非功能需求,比如性能,可伸缩性或安全性。

明确地考虑软件架构,提供了一种引人技术领导的方式,增加成功交付的胜算也对你有益。

3.软件架构的角色关乎编码、指导和合作

很多人对软件架构师的印象还很老套,以为就是“象牙塔”软件架构师向毫不知情的开发团队而授机宜。其实并非如此,因为现代软件建构更倾向于成为一种有利于编码、指导和协同设计的方法。

软件架构的角色不一-定要由一- 个人来承担,面且要了解得到的架构是否确实行得通,编码是非常好的方式。

4.无需使用UML

同样地,传统观点还以为软件架构就是试图捕捉每- 个细节的庞大UML模型。创造和交流共同的愿景很重要,然而你不见得需要使用UML。实际上,可以说UML并不是一个交流软件架构的好方法。如果要保留一些简 单的指导方针。轻量级“框线”风格的草图是-个交流软件架构的有效方式。

5.好的软件架构是支持敏捷开发的

有一种普遍的误解,认为“架构"和“敏捷”之间是矛盾的。但恰恰相反,好的软件架构是支持敏捷的,可以帮助你拥抱并实现变化。然而好的软件架构并非与生俱来,需要你努力争取。

本书主要包括七部分内容:什么是软件架构、软件架构的角色、设计软件、可视化软件、为软件生成文档、开发生命周期中的软件架构、金融风险系统。

接下来我就把目录分享出来,让大家都能够直观的感受到。

想要获取这本书的小伙伴就可以转发此文关注小编,私信小编“学习”来拿走吧!

程序员必读之强调实践、注重实效、轻量级、面向开发者的软件架构
程序员必读之强调实践、注重实效、轻量级、面向开发者的软件架构
程序员必读之强调实践、注重实效、轻量级、面向开发者的软件架构