请教一个UML的问题:对于比较大型的程序,如果程序分为很多包,包中有很多类,那么如何通过类图和包图表示各个类的关系?
不知道你是从那个层面分析的,个人觉得,一个程序进行分层设计后,应尽量减少层与层之间的类的交互关系。一般层与层之间交互是通过有限的几个公共接口来进行的。
那么画类图的时候,我觉得,可以分成两个部分
1. 画包图:描述包与包之间的关系,隐藏包之间类的关系。
2. 画类图:描述包中类之间的关系,不包含包与包之间的关系。
我理解你的意思可能是A包里面的类,继承或调用了B包里面的类,但我觉得这种跨包继承和调用应该被定义为 包与包的公共接口。这样的话应该归类于包与包之间的关系吧。
个人的理解 :)
我的建议,不要画包图,因为没用,根据业务逻辑画类图,最好把同一的包的类最好画到一起,之后注释一下这些类属于这个包,到最后,把逻辑类图中没用到的类(比如工具类)单独拿出来,标示一下主要方法及包命即可。
复杂的程序最好分层管理,类包管理没什么好规范
分子系统[或模块] 管理吧.
对于 子系统间[或模块间] 的交互, 再特别将它们的关系抓出来就可以了.