系统架构设计师考点——软件架构设计(架构风格!!!)

一、架构风格的概念

**软件体系架构风格是描述某一特定应用领域中系统组织方式的惯用模式。**架构风格定义一个系统家族,即二个架构定义一个词汇表和一组约束。词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。架构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。对软件架构风格的研究和实践促进对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。架构设计的一个核心问题是能否达到架构级的软件复用。架构风格定义了用于描述系统的术语表和一组指导构建系统的规则。

二、基本架构风格

1、数据流风格:面向数据流,按照一定的顺序从前向后执行程序,代表的风格有批处理序列、管道过滤器。

2、调用/返回风格:构件之间存在互相调用的关系,一般是显式的调用,代表的风格有主程序/子程序、面向对象、层次结构。

3、独立构件风格:构件之间是互相独立的,不存在显式的调用关系,而是通过某个事件触发、异步的方式来执行,代表的风格有进程通信、事件驱动系统(隐式调用)。

4、虚拟机风格:自定义了一套规则供使用者使用,使用者基于这个规则来开发构件,能够跨平台适配,代表的风格有解释器、基于规则的系统。

5、仓库风格:以数据为中心,所有的操作都是围绕建立的数据中心进行的,代表的风格有数据库系统、超文本系统、黑板系统。

三、常考必记

相关推荐
袋鼠云数栈UED团队13 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
兆子龙14 小时前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构
兆子龙15 小时前
用 Auto.js 实现挂机脚本:从找图点击到循环自动化
前端·架构
兆子龙17 小时前
从 float 到 Flex/Grid:CSS 左右布局简史与「刁钻」布局怎么搞
前端·架构
爱勇宝20 小时前
2026一人公司生存指南:用AI大模型,90天跑出你的第一条现金流
前端·后端·架构
偷油师傅21 小时前
拆解 OpenClaw - 05:13 个省 Token 的设计
架构
兆子龙21 小时前
当「多应用共享组件」成了刚需:我们从需求到模块联邦的落地小史
前端·架构
sunny_1 天前
⚡️ vite-plugin-oxc:从 Babel 到 Oxc,我为 Vite 写了一个高性能编译插件
前端·webpack·架构
兆子龙2 天前
模块联邦(Module Federation)详解:从概念到手把手 Demo
前端·架构
Bigger2 天前
告别版本焦虑:如何为 Hugo 项目定制专属构建环境
前端·架构·go