UML 之 包图

包图(Package Diagram)
包图可以是任何一种的UML图组成,通常是UML用例图或UML类图。 包是一个UML结构,它使得你能够把诸如用例或类之类模型元件组织为组。 包被描述成文件夹,可以应用在任何一种UML图上。
虽然包图并非是正式的UML图,但实际上他们是很有用处的, 创建一个包图是为了:描述你的需求高阶概述、描述你的设计的高阶概述、在逻辑上把一个复杂的图模块化、组织Java源代码。




包的元素
包可以拥有类、接口、构件、用例、其他包等。若包被撤销,则其中的元素也被撤销了。




包的可见性
1.公有访问(Public):包内的元素可以被任何引入此包的其他包内的元素访问。公有访问用前缀于内含元素名字的加号(+)表示。
2.保护访问(Protect):此元素能被该模型包在继承关系上后继模式包的内含元素访问。保护访问用前缀于内含元素名字的(#)号表示。
3.私有访问(Private):表示此元素可以被属于用一包的内含元素访问。私有访问用前缀于内含元素名字的减号(-)表示。




包与包之间的关系
泛化:表明两个包中的类有继承关系。包之间不能画出泛化关系,用依赖代替。
依赖(常用):如果两个包中的任意两个类之间有依赖关系,则这两个包间有依赖关系。




UML包图设计六个准则
1.REP:重用发布等价原则
从用户观点的角度上为我们规范了包设计的原则:在设计包时,包中应该包含的元素要么都可以重用,要么都不可以重用。
2.ADP:无环依赖原则
为我们解决包之间的关系耦合问题。在设计包结构时,不能有循环依赖。
3.SAP:稳定抽象等价原则
为我们解决包之间的关系耦合问题。在设计包结构时,稳定的包应该是抽象的(由抽象类或接口构成),不稳定的包应该是具体的(由具体的实现类构成)。
4.SDP:稳定依赖原则
为我们解决包之间的关系耦合问题。在设计包结构时,包应该只依赖比自己更稳定的包。
5.CCP:共同封闭原则
从软件功能的角度上为我们规范了包设计的一个原则:在设计包时,相互之间紧密关联的类应该放在同一包里。
6.CRP:全部重用原则

从用户的角度上为我们规范了包设计的一个原则:在设计包时,相互之间没有紧密关联的类不应该放在同一包里。





下面是我自己画的机房收费系统的包图,仅供参考,有不足之处,希望大家给我指出来

UML 之 包图_第1张图片




你可能感兴趣的:(UML 之 包图)