边界
- 边界就是面向对象的封装
- 边界决定视界
- 边界决定抽象层次
封装才能解耦,做到心中有边界。
业务实体
- 业务实体代表业务角色执行业务用例时所处理或使用的事物。
- 参与者代表人、用例代表事、业务实体代表物。
包
- 主要用来容纳并为其他元素分类。
- 好的分包具有高内聚、低耦合特性,应该避免双向依赖和循环依赖。
- 常用包包括:领域包、子系统、组织结构、层包。
分析类
- 分析类是跨越需求到设计的桥梁。
- 分析类代表系统主要的职责簇
- 分析类可以产生设计类和子系统
主要包括边界类、控制类和实体类。
边界类可以隔离直接访问,其作用相当于门面模式。相当于架构中的接入层。
边界类常用场景:
- 参与者和用例之间应当建立边界类。
- 用例和用例之间交互,应当建立边界类。
- 用例和系统边界之外的非人对象交互,应当建立边界类。
- 相对独立的业务对象之间,应当建立边界类。
控制类
控制类主要用于为一个或多个用例特有的控制行为建模。
控制类相当于业务逻辑层,隔离接入层对实体类的直接访问。
实体类
实体类用于为存储信息和相关行为建模。
实体类主要位于数据持久层。
设计类
设计类是系统实施中一个或多个对象的抽象。包括类属性和方法。