结构化和面向对象分析和设计深入比较

张开发
2026/4/13 21:02:15 15 分钟阅读

分享文章

结构化和面向对象分析和设计深入比较
结构化分析与面向对象分析设计深入比较结构化方法与面向对象方法是软件工程中两种主流的分析与设计范式。理解它们的本质区别、适用场景及演进关系,是系统分析师的核心能力。以下从哲学基础、建模视角、过程步骤、产物形态、优缺点五个维度进行全面对比。一、核心思想对比对比维度结构化方法面向对象方法哲学基础功能分解 —— 将系统看作一系列功能的集合,按“自顶向下、逐步细化”的方式分解对象抽象 —— 将系统看作一组相互协作的对象,按“识别对象、封装数据和行为”的方式组织核心关注点数据流和加工—— 系统做什么(功能)对象和关系—— 系统由什么组成(结构+行为)数据与行为关系分离—— 数据存储在数据字典,行为用加工说明描述统一—— 数据和操作封装在对象内部系统分解方式按功能分解(DFD中的加工)按业务概念分解(类图中的对象)变化应对策略功能变化影响大,需重新分解封装变化,对象边界清晰,易扩展一句话总结:结构化:以数据流为驱动,以功能为中心面向对象:以用例为驱动,以对象为中心二、建模视角与工具对比视角结构化方法面向对象方法功能视角数据流图(DFD)—— 描述数据如何流动、被加工用例图 —— 描述系统功能边界、参与者与用例关系数据视角ER图 —— 描述实体及关系类图 —— 描述类、属性、方法、关联、继承、多态行为视角状态迁移图 —— 描述状态及转换序列图、活动图、状态机图 —— 描述对象交互、流程、状态数据字典核心产物,定义所有数据元素由类属性定义隐式包含,不单独作为核心产物加工说明结构化语言、判定树、判定表由类中的方法实现,无需单独文档

更多文章