UML——包图[通俗易懂]

UML——包图[通俗易懂]UML——包图

大家好,又见面了,我是你们的朋友全栈君。

       包是用于分组的符号,常用来对一组相同的UML元素进行分组存放和管理,包图就是用来描述包及其关系的图,我们常用包图来描述系统、子系统的宏观组成和结构。这么官方的语言大家可能不太理解,其实包图就类似于文件夹,一个程序往往包含了很多元素,所以我们可以将这些类按照一定标准划分,将具有相似功能的一组元素放在一个包中,使我们的程序结构上清晰,源码易读。所以就和我们日常生活中通过文件夹对我们的资料就行分类管理,以便我们快速准确的找到我们所需要的东西,提高工作效率的道理一样。

UML——包图[通俗易懂]


一.包

1.作用

2.图符

   —  逻辑上把一个复杂的图模块化,体现了分组机制。

   —  更清晰的组织源代码。

   UML——包图[通俗易懂]

3.元素

   一个包中可以包含类、接口、构件、用例及其他包等。


二.关系

1.依赖

   依赖是最普遍的关系,如果两个包中的任意两个类之间有依赖关系,则这两个包之间有依赖关系。

2.泛化

   与用例图、类图中的泛化关系一样,这里体现了包与包之间的泛化关系,也就是继承关系。


三.注意的问题

1.几个包之间要避免循环依赖产生。即:

   UML——包图[通俗易懂]

2.测试时以包为单位测试。

3.尽量把概念和语义上相接近的元素包含在同一个包中。

   这个跟我们今天讲的过程的内聚是一个道理,所以说高内聚低耦合这样一句每个程序员都知道的话无论是在编程的        各个方面,还是在生活中,都淋漓尽致的体现出来。

4.包内元素的作用域。

   包内的元素可以分为公共的(public)、受保护的(protected)、私有的(Private)。在这里应注意“最小化包间的耦    合关系”,即最大限度减少包之间的依赖,进行包封装时,避免包之间的循环依赖;最小化每个包中public、protected    元素的个数,最大化每个包中private元素的个数。

   

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105783.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 在ubuntu中pycharm2021.12.13最新激活码-激活码分享

    (在ubuntu中pycharm2021.12.13最新激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~41MD9IQHZL-eyJsaWNlbnNlSWQiOi…

    2022年3月30日
    180
  • Java基础–单链表的实现[通俗易懂]

    Java基础–单链表的实现[通俗易懂]Java内部也有自己的链表–LinkedList,但是我们今天不是讨论LinkedList,而是自己来实现一个单链表,包括简单的增删查改,以及使用链表来实现栈和队列这两种数据结构,涉及的方面如下: 单链表的结构 单链表的基本操作 使用虚拟头结点的单链表 单链表实现栈 单链表实现队列 单链表的结构 一种链式存取的数据结构,单链表中的数据是以结点的形式存在,每一个结点…

    2022年6月14日
    26
  • Celer Network月报 202107

    Celer Network月报 202107Celer技术研发更新 cBridgev1开发完成,主网上线,运行良好 cBridgev2开始研发,新增智能费率与流动性调节功能 Layer2.finance测试网成功运行,完成所有相关问题修复与功能改进 正在进行多项Layer2.finance的策略开发工作 SGN主网技术支持,现已有10个验证节点上线 Celer社区建设及市场活动社区动态更新本月重点事件Layer2.financev1.0版本测…

    2022年5月17日
    62
  • DB4O学习笔记

    DB4O学习笔记什么是DB4O“利用表格存储对象,就像是将汽车开回家,然后拆成零件放进车库里,早晨可以再把汽车装配起来。但是人们不禁要问,这是不是泊车的最有效的方法呢。”–EstherDysondb4o是一个开源的纯面向对象数据库引擎,对于Java与.NET开发者来说都是一个简单易用的对象持久化工具,使用简单。同时,db4o已经被第三方验证为具有优秀性能的面向对象数据库,下面的基准测…

    2022年7月21日
    27
  • mac OCR截图文字识别工具—iText for mac[通俗易懂]

    mac OCR截图文字识别工具—iText for mac[通俗易懂]iTextformac中文版是Macos系统上一款从图片中识别文字的OCR(光学字符识别)工具。通过截图、拖拽图片,即可以从扫描版的PDF等任意图片中识字,并且可以很好的解决摘抄和批注需求。帮助用户识别图片中文字,节约时间,提高效率。iTextformac下载安装教程…

    2022年5月30日
    52
  • laravel-admin 安装(总结)

    laravel-admin 安装(总结)

    2021年10月29日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号