【第43节 软件架构风格】


一、节概述

在系统架构设计师考试中,软件架构风格是理解架构设计模式与系统组织结构的基础,是考生深入理解软件系统组织方式与性能取舍的关键章节。

本节主要介绍了常见的软件架构风格及其适用场景和组织模式,包括数据流风格调用/返回风格以数据为中心的风格虚拟机风格独立构件风格、以及C2风格等。每种风格都反映了不同类型系统在架构设计中的共性和结构化思路。


二、知识详解

1. 软件架构风格概述

架构风格是指在特定领域中系统架构的通用组织模式,它定义了:

  • 词汇表:系统的基本构件(如对象、过程)和连接件(如消息、数据流)
  • 约束:描述构件之间的组合和通信规则

🔺 架构风格的核心价值在于:重用结构化思路和模式,提高设计效率与质量一致性


2. 数据流体系结构风格

🔹 批处理风格
  • 每个处理步骤为独立程序
  • 数据需完整传输,各步骤顺序执行
  • 典型场景:银行对账、日志处理
🔹 管道-过滤器风格
  • 每个处理阶段是过滤器
  • 使用数据流连接各处理阶段
  • 优势:高模块化、易扩展

📌 关键特征:构件为过滤器连接件为数据流


3. 调用/返回体系结构风格

🔸 主程序/子程序风格
  • 单一控制线程
  • 程序结构为“树形调用”
🔸 面向对象风格
  • 构件为对象
  • 强调封装、继承、多态
  • 适用于可复用性强的应用
🔸 层次型风格
  • 系统分为多个互相依赖的层级
  • 每层仅与相邻层通信
  • 示例:TCP/IP协议栈
🔸 客户端/服务器风格(C/S)
  • 二层:客户端 + 数据服务器
  • 三层:表示层 + 功能层 + 数据层
  • 三层适用于:业务逻辑复杂的应用
🔸 浏览器/服务器风格(B/S)
  • 三层结构为:浏览器 / Web服务器 / 数据库
  • 常见于:企业信息系统、OA系统

4. 以数据为中心的体系结构风格

🔹 仓库风格
  • 一个中央数据仓库 + 多个操作构件
  • 构件通过共享数据进行交互
🔹 黑板风格
  • 类似“专家系统”结构
  • 包含:黑板(中央数据)+ 知识源(推理模块)+ 控制器
  • 用于:问题求解系统(如语音识别、故障诊断)

5. 虚拟机体系结构风格

🔸 解释器风格
  • 系统内置虚拟机解释执行
  • 弥合程序语义与硬件语义差异
  • 缺点:执行效率较低
🔸 规则系统风格
  • 构件包括:
    • 知识库
    • 规则解释器
    • 工作内存
  • 典型应用:专家系统、智能推理系统

6. 独立构件体系结构风格

该风格强调模块的独立性与低耦合性

🔹 进程通信风格
  • 构件为独立进程
  • 使用消息机制传递信息
  • 适合:并发性高、可移植性要求高的系统
🔹 事件系统风格
  • 构件通过事件触发进行协作
  • 无直接调用,耦合度低
  • 应用于:GUI应用、Web系统

7. C2 风格

  • 构件间无直接连接
  • 所有通信通过连接件完成
  • 适用于:分布式、高内聚低耦合的架构需求

📌 构件通过上行接口(接受数据)下行接口(发送数据)通信,强调异步广播


三、关键点提炼

关键点内容
风格结构组成构件(功能单元)+ 连接件(通信机制) + 约束
数据流风格批处理(完整传输)与管道-过滤器(连续处理)
调用/返回风格主/子程序、OO、层次型、C/S、B/S
以数据为中心仓库(数据集中)与黑板(专家协作)
虚拟机风格解释器(虚拟执行)与规则系统(知识推理)
独立构件风格进程通信(消息)与事件驱动(触发)
C2 风格所有通信通过连接件,强调解耦与异步

四、考试提示

📝 常见考题类型

  • 概念匹配题:给定描述,判断属于哪种架构风格
  • 优缺点分析题:分析风格适用性及其影响
  • 风格对比题:如 C/S 与 B/S,管道-过滤器与黑板等

⚠️ 易混淆点

概念易混点区分要点
管道-过滤器 vs 批处理都为数据流前者连续传输,后者整体传输
仓库 vs 黑板都有中央数据结构黑板含有推理控制流程
解释器 vs 编译器架构级误用解释器用于虚拟机架构风格
C/S vs B/S层数混淆B/S明确分为浏览器、Web服务器、数据库三层

五、总结与建议

本节内容围绕各类架构风格进行系统介绍,是架构设计的“结构化语言”。考试时既考概念理解,也考应用适配能力

✅ 建议如下:

  • 建立对风格的结构化记忆框架(如数据流、调用返回等类别)
  • 结合实际案例加深对风格特性的理解
  • 注意各风格的构件类型、连接方式、组织结构与典型应用场景

🧠 掌握架构风格,就等于掌握了“系统设计的基本语法”。选择合适的风格是系统可维护、可扩展、高性能运行的第一步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值