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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SpringMVC执行流程和原理「建议收藏」

    SpringMVC执行流程和原理「建议收藏」SpringMVC流程:01、用户发送出请求到前端控制器DispatcherServlet。02、DispatcherServlet收到请求调用HandlerMapping(处理器映射器)。03、HandlerMapping找到具体的处理器(可查找xml配置或注解配置),生成处理器对象及处理器拦截器(如果有),再一起返回给DispatcherServlet。04、Dispatche…

    2022年6月28日
    25
  • linux lvm挂载新的硬盘并且扩容

    linux lvm挂载新的硬盘并且扩容

    2021年11月22日
    46
  • 音频功放的种类和基本原理

    音频功放的种类和基本原理音频功放的种类和基本原理作者:AirCity2019.12.2Aircity007@sina.com本文所有权归作者Aircity所有1 简介功率放大器简称功放,它是将小信号放大,这个放大包括电压和电流,用更大的功率推动音响放声。在技术发展过程中,产生了不同类型的功放种类,按照功率管的导电方式,可以分为甲类功放(又称A类)、乙类功放(又称B类)、甲乙类功放(又称AB类)和丁类功放功…

    2022年6月4日
    33
  • 把html转成xpath可以解析的对象「建议收藏」

    把html转成xpath可以解析的对象「建议收藏」fromlxmlimportetreeresponse_detail=requests.get(src__url,headers=getHeaderObject()).content#使用xpathpage_source=etree.HTML(response_detail.decode(‘utf-8’))

    2025年10月8日
    1
  • C++ ffmpeg+dxva2实现硬解码「建议收藏」

    C++ ffmpeg+dxva2实现硬解码「建议收藏」0.前言参考博客:ffmpeg实现dxva2硬件加速下载源码:GitHub:https://github.com/Yacov-lu/ffmpeg-DXVA-decode百度网盘:https://pan.baidu.com/s/1fFm4Ra5ka2bPJeIRig14wA?pwd=qwer提取码:qwer该源码下载后,将播放的视频路径(filename)修改为你自己的,便可直接运行。1…

    2025年5月27日
    26
  • Apache 中RewriteRule 规则参数[通俗易懂]

    Apache 中RewriteRule 规则参数[通俗易懂][size=medium]Apache中RewriteRule规则参数Apache模块mod_rewrite提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求。它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制。此URL操作可以依赖于各种测试,比如服务器变量、环境变量、HTTP头、时间标记,甚至各种格式的用于匹配URL组成部分的查找数…

    2022年5月15日
    43

发表回复

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

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