软考高级第四版备考---第四十一天(软件工程-软件设计)

一、结构化设计

结构化设计(Structured Design,SD)是一种面向数据流的方法,它以SRS和SA阶段所产生的DFD和数据字典等文档为基础,是一个自顶向下、逐步求精和模块化的过程

二、面向对象设计

2.1面相对象设计(OOD)是OOA方法的延续,其基本思路包括对象、封装和可扩展性,其中扩展性主要通过继承和多态来实现

2.2常用的OOD原则包括:

  • 单职原则:设计功能单一的类。本原则与结构化方法的高内聚原则是一致的
  • 开闭原则:对扩展开放,对修改封闭
  • 李式替代原则:子类可以替换父类
  • 依赖倒置原则:要依赖于抽象,而不是具体实现;要针对接口编程,不要针对实现编程
  • 接口隔离原则:使用多个专门的接口比使用单一的总接口要好;
  • 组合重用原则:要尽量使用组合,而不是集成关系达到重用目的。
  • 迪米特原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解。本原则与结构化方法的低耦合原则是一致的

三、设计模式

3.1设计模式是前人经验的总结,它使人们可以方面地复用成功的软件设计。

设计模式包含模式名称、问题、目的、解决方案、效果、实例代码和相关设计模式等基本要素

3.2根据处理范围不同,设计模式可分为类模式和对象模式

3.3根据目的和用途不同,设计模式可分为创建型(Creational)模式、结构型(Structural)和行为型(Behavioral)模式

相关推荐
嘟哩DuliDuli18 小时前
剧本节点输入归一化:文本来源、版本与下游引用
android·人工智能·安全·ai·软件工程
qiyongwork20 小时前
泛金融IT 研发管理平台设计
金融·项目管理·软件工程·研发管理
我命由我123452 天前
软件工程概念 - 可插拔性
java·后端·学习·java-ee·系统架构·软件工程·学习方法
信可维2 天前
AI 读 Word 表格总读错?先查合并单元格和表头这 3 处
开发语言·人工智能·c#·word·软件工程
Teable任意门互动4 天前
项目管理数字化落地案例|任意门互动科技(Teable 官方合作伙伴)以多维表格搭建项目管理平台
人工智能·开源·软件工程·飞书·开源软件·数据库开发
Allen-Steven4 天前
P/V操作详解与相关考点(软考知识点)
软件工程
嘟哩DuliDuli4 天前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
用AI来创业吧6 天前
网站建设公司哪家好:报价差 3 倍,差在哪四项成本上(选型笔记)
笔记·性能优化·软件工程·安全威胁分析
seconp6 天前
基于Spring Boot和Vue 3的智慧旅游网站:住宿预订、行程规划与千问接入
vue.js·spring boot·毕业设计·软件工程·课程设计·旅游·毕设
地图小课堂6 天前
Bigemap Pro 教程|地方独立坐标系 CAD 图纸,怎么导入套合卫星影像
软件工程