构建软件解决方案
目标
完成这个模块(章节),你可以:
1、为解决模型定义一个Java技术包层级树
2、识别满足精心设计的领域模型的Java技术代码
进程图
为解决方案定义包结构
1、在UML中呈现Java技术包
2、应用包依赖原则
3、隔离子系统和框架到包中
4、开发一个满足解决方案的包结构
使用UML包
1、一个UML包是一个为了给其他UML图或元素分组的模型结构
2、一个UML包也可以用来代表Java技术包(一组相关的类)
应用包规则
1、包依赖
2、通用闭包原则(CCP)
3、无环依赖原则(ADP)
4、稳定依赖原则(SDP)
5、稳定抽象原则(SAP)
简单的包依赖
“ If changing the contents of a package P2 (might) impact the contents of another package P1,
hen we can say that P1 has a package dependency on P2. ” (Knoernschild page 24)
如果改变包P2的内容可能影响包P1的内容,那么我们可以说P1对P2有包依赖。
----Knoernschild 24页
通用闭包原则
“ Classes that change together, belong together. ” (Knoernschild page 26)
类一起改变,相互属于 ----Knoernschild 26页
1、通用闭包原则(CCP)识别包内聚;强调所有的服务被所有的包提供
2、CCP倾向于通过关心的隔离给包分组
例如:
2.1通过一个用例一起给网络组件分组
2.2给相关的领域模型类一起分组
无环依赖原则
“ The dependencies between packages must form no