设计模式之UML类图该怎么画

关于可维护、可复用、可扩展、灵活性好的理解:

生活中:印刷术和活字印刷,当需要对某些内容修改时,印刷术只要有一丁点变化,就需要重头再来;而活字印刷只需要进行部分修改即可。

可维护:只更改要更改的内容;

可复用:之前的内容并非用完就无用,后面仍可使用;

可扩展:若要新增内容,只需在原来内容的基础上增加新内容即可;

灵活性:内容可以稍作修改既可以满足要求。

封装、继承、多态把程序的耦合度降低,使用设计模式使得程序更加灵活,容易修改并易于复用。

UML类图

在学习设计模式时,UML类图是必不可少的工具,通过UML类图可以查看所设计的程序是否足够优秀。判断所设计的代码是否具有可维护性、可扩展性、可复用性、灵活性等。在这里插入图片描述
(图片来自大话数据结构)

  • 类图分为三层,第一层显示类的名称,如果是抽象类,则用斜体显示;第二层是类的特性,通常是字段和属性;第三层是类的操作,通常是方法或行为;注意前面的符号,“+”:public,“-”:private,“#”:protected

  • 接口

    与类图的区别主要是顶端有<<interface>>显示;第一行是接口名称,第二行是接口方法。接口还有棒棒糖表示法,如上图所示,唐老鸭实现讲人话这个接口,在圆圈旁边是接口的名称。

  • 继承(类与类)

    空心三角形+实线;空心三角形在被继承端,即父类

  • 实现(类与接口)

    空心三角形+虚线;空心三角形在被实现端

  • 关联

    当一个类需要知道另一个类时,如企鹅需要知道气候变化,需要了解气候规律。用实线箭头表示,箭头指向被了解方

  • 聚合

    比如:每只大雁都属于一个雁群,而一个雁群可以有多只大雁;它们之间就满足聚合关系。聚合表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。聚合用空心菱形+实现箭头表示,菱形在B对象上,箭头指向A对象

  • 合成/组合

    比如:鸟和翅膀就是组合关系,是一种强的‘拥有’关系,体现严格的部分和整体的关系,两者生命周期一样。合成关系用实心菱形+实线箭头来表示,实心菱形在拥有端,箭头指向被拥有端,在合成关系的连线两端还有数字,称为基数,表示这一类可以有几个实例,

  • 依赖

    如上图的动物需要依赖氧气、水等用虚线箭头表示,箭头指向被依赖端

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值