面向对象设计
将OOA创建的分析模型转化为i设计模型,定义系统构造蓝图
活动
识别类及对象
定义属性
定义服务
识别关系
识别包
原则
单一责任SRP
一个类只负责一种功能,当需要修改该类时,也仅仅因为这个功能
开放-封闭
软件实体时应该是可扩展但不可修改的
里氏替换
字类型应该可以替换掉他们的基类型
依赖倒置
抽象不应该依赖于细节,细节应该依赖于抽象
接口分离
不应该强迫客户依赖于他们不用的方法
重用发布等价
重用的粒度就是发布的粒度
共同封闭
一个变化对一个包产生影响,则将对该包中的所有类产生影响,对其他包无影响
共同重用
如果重用了包中的一个类,就要重用该包中的所有类
无环依赖
包的依赖关系中不允许存在环
稳定依赖
朝着稳定的方向进行依赖
稳定抽象
包的抽象程度因该和其稳定程度一致