转载请注明出处:vicentz
1.前言
上篇文章已经说明了咱们要开始学习设计模式,我参考的书籍是《大话设计模式》,这本书以故事线为主线,带领读者层层深入,很适合自学的读者(凭心论,非广告/(ㄒoㄒ)/~~)。但是学习之前,我们要能简单的识别常见的UML图,对面向对象有个大概的了解,这篇文章主要就是介绍这个的。
2.正文
废话不多说,我们直入主题:
我相信大家大部分人都用的是面向对象语言吧,所以对于这个面向对象应该都很了解了(封装,继承,多态),我们这里不讲面向对象,只讲基于面向对象解决办法的辅助工具UML图,一个良好结构的UML图不仅能帮助我们快速分析问题,还能在于后期维护时候提供有效的帮助,所以本人也十分建议在日常工作前,能草拟一个UML图来帮助我们分析对象之间的关系。
2.1.类图
首先,最先介绍的就是类图了,它包包含了类的名字,属性和方法。
2.2.接口
接口就是预定义了一个实现该接口的类需要满足的条件,一般只是指方法。
2.3.继承
继承就是子类继承了父类的所有属性和方法,方便扩展。
2.4.依赖
依赖关系最弱,对象A作为对象B的某一个行为的参数传入,可有可无,没有的话顶多就不产生这个行为,或者对行为产生不同的结果而已。
2.5.关联
关联就是一个类要知道另一个类这种情况,可以是私有的属性,耦合关系弱。
2.6.聚合
是一种弱拥有关系,A对象包含B对象,但是B对象可以不是A的一部分。
2.7.合成
是一种强拥有关系,严格的整体与部分关系,部分和整体的生命周期一致。
好了,到这里我们已经把所有的对象间的关系和UML图展示给大家了,大家有没有觉得爽爆了的感觉,又没有觉得其实面向对象并没有那么难,所有的大问题都能拆分成小问题,小问题再拆分更小的问题,至于如何拆分与结合才是我们真正要探索的,慢慢来,量变终究会质变的。
对于对象间关系我也用OC写了一个Demo,20161127_Demo_Object Oriented供大家参考。
转载请注明出处:www.vicentz.cn