PHP头条
热点:

php设计模式——UML类图


前言
用php开发两年多了,准备也写一下平时常用的设计模式,都是基于自己的实践经验,当然,用设计模式之前首先要看懂设计模式,因此这里首先讲解一下UML类图。通过UML类图,能更好的和大家交流,也能很容易就表达出自己的设计想法


UML
Unified Modeling Language(UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置

 



矩形框代表一个类,类图分为三层
第一层为类的名称,如果是抽象类则类名用斜体表示,如图中的动物类
第二层为类的特性(通常为类的成员属性)
第三层为类的操作(通常为类的成员方法)
注意:“+”代表public,“-”代表private,“#”代表protected

 

 \
 


动物类是一个抽象类,它是不能被实例化的,而人类是可以被实例化的


接口
接口有两种表示方法:矩形表示法(开车的接口)和棒棒糖表示法(人类中的实现开车的接口)。
矩形表示法,顶端有<<接口>>或者<<interface>>,第一行为接口名称,第二行为接口方法
棒棒糖表示法,圆圈旁为接口名称,接口方法在实现类中出现,如果人类中的开车

 \
 

 


泛化(Generalization)
表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系。一般化的关系是从子类指向父类的,与继承或实现的方法相反。用空心三角形+实线来表示继承。在静态结构图中,在父类和子类间拖放归纳连接,箭头指向父类,另一段指向子类。用空心三角形+虚线来表示实现接口。

 

 \
 

 


依赖(Dependency)
对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。依赖关系具体表现在局部变量,方法的参数,以及对静态方法的调用。比如说动物有几大特征,如新陈代谢,繁殖,有生命。而动物要有生命力,就需要氧气,水,以及食物,也就是说动物依赖于氧气和水。
代码表现
局部变量、方法的参素和或者对静态方法的调用

 

 \
 

 

 


聚合关系(Aggregation)
聚合关系是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。用带空心菱形的实心线来表示


代码表现
成员变量

 

 

 \
 

 


组合(Composition)
是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部分是组合关系


代码表现
成员变量

 

 

 \
 

 


后记
还有一些有待补充吧,边学边记!

www.phpzy.comtrue/phprm/6837.htmlTechArticlephp设计模式——UML类图 前言 用php开发两年多了,准备也写一下平时常用的设计模式,都是基于自己的实践经验,当然,用设计模式之前首先要看懂设计模式,因此这里首先讲解一下U...

相关文章

    暂无相关文章
相关频道:

PHP之友评论

今天推荐