Files
obsidian/软件需求分析/速查手册/设计原则与术语速查.md

3.4 KiB

设计原则与术语速查

用途:考前快速回顾关键设计原则和术语


🔷 SOLID五大原则

原则 全称 含义
S 单一职责原则 一个类只负责一件事
O 开闭原则 对扩展开放,对修改关闭
L 里氏替换原则 子类可以替换父类而不出问题
I 接口隔离原则 接口要小而精,不要大而全
D 依赖倒置原则 依赖抽象(接口),不依赖具体实现

🔷 包设计四大原则

缩写 原则 含义
REP 重用等价原则 可一起复用的类放一个包
CCP 共同闭包原则 需要同时修改的类放一个包
CRP 共同重用原则 不会一起用的类分开放
ADP 非循环依赖原则 包之间的依赖不能形成环

🔷 其他重要原则

原则 含义
高内聚低耦合 包内关系紧密(内聚),包间关系稀疏(耦合)
迪米特法则 最少知识原则——只跟"朋友"说话
组合优于继承 能用组合实现的效果,别用继承(更灵活)

🔷 数据库三大范式

范式 要求
1NF 字段值不可再分(原子性)
2NF 非主键字段完全依赖主键(消除部分依赖)
3NF 非主键字段不传递依赖主键(消除传递依赖)

🔷 对象模型→数据模型映射速查

对象模型 数据模型
属性 字段(列)
操作 触发器 + 存储过程
1对0..*关联 多的一端加外键
关联 新建关联表
泛化关系 三种方案(父子各建表/只建子表/只建父表)

🔷 需求工程术语速查

术语 定义
软件需求 用户对系统在功能、行为、性能、约束方面的期望
业务需求 组织的高层次目标
用户需求 用户使用系统完成的任务
功能需求 系统必须实现的功能
非功能需求 系统的质量属性和约束
SRS 软件需求规格说明书
需求基线 评审通过、双方承诺的需求版本
需求跟踪矩阵(RTM) 记录需求与设计、代码、测试对应关系的表
需求变更控制 变更申请→审批→修改→重新确认的流程

🔷 面向对象核心概念

概念 含义
封装 隐藏内部实现,只暴露接口
继承 子类自动拥有父类的属性和方法
多态 同一操作在不同对象上有不同行为
抽象 提取共性,忽略细节

🔷 关联关系多重性速记

符号 含义
1 恰好1个
0..1 0个或1个
*0..* 0个或多个
1..* 至少1个
n 恰好n个

🔷 常见设计模式速查

模式 类型 解决什么问题
策略模式 行为型 同一功能有多种算法实现,可动态切换
工厂方法 创建型 创建对象时不指定具体类
组合模式 结构型 统一处理整体和部分(如文件系统目录和文件)
DAO模式 数据访问 分离数据访问逻辑和业务逻辑
MVC模式 架构型 分离界面(View)、逻辑(Controller)、数据(Model)