【菜鸟学习设计模式】——三个模式

前言

设计模式分为三个设计模式,六个基本原则,贯彻了面向对象的三大特征,以及基本的抽象思想。在大话设计模式的OOTV模式大赛里面。把每一部分内容都贯穿其中,如下导图;
这里写图片描述
先解释一下:这些模式里为什么没有简单工厂;她在海选的时候就被Pass了,因为不满足开闭原则。具体内容之后再解释。
之后会单独对于三个模式六个基本原则单独介绍。从整体上看,这三个模式有怎样的不同点和相同点?

三个组的对比

创建模式
是什么 它创建抽象类且抽象了实例化的过程
什么时候用 当一个系统独立于他的产品创建、构成、表示时应用
怎么用 系统关于对象所知道的是又抽象类所定义的接口,调用接口使用

总之,创建模式顾名思义
创建了什么可以让系统中的对象通过定义的接口相互联系且不混乱。
换句话说,每个程序内部关系紧密完整;程序和程序之间灵活有相应的接口保持联系。
为什么会有创建模式?
因为创建类和对象的过程和内容会占用很多的资源,为了提高运行效率,所以把创建部分单独拿出来研究。
最终创建型模式实现了隐藏了实例化过程,也就是他创建了什么,谁创建的它,它是怎么被创建的、以及何时创建的都提供了很多的灵活性。

结构型模式
是什么 创建完的对象和类之间组成的依赖或者继承的结构
什么时候用 创建完对象之后,对象方法属性重复过多,或紧耦合
怎么用 解耦;匹配、简化接口;信息隐藏

为什么有结构型模式?
对象创建完之后,对象使内存占用过多,而且如果都是大量重复的对象,那就是资源的极大浪费。所以需要针对对象之间依赖关系进行单独研究。
解决的问题?
准对:对象间接口不兼容问题;
对象抽象和实现部分紧耦合问题;
继承过多关系复杂不宜扩展问题;
为了添加额外职责而生成子类过多不灵活问题;
对多个子类对象访问 等问题,做出了相应的解决方法。

行为型模式
是什么 对象间依赖、继承等关系解决后,对其做出的动作、行为的总结
什么时候用 动态的变化的状态时,需要更新(增加、撤销操作等)的对象
怎么用 通过定义对象依赖关系、封装对象、链接对象、中介辅助等

什么有行为模式?
在创建完对象,把对象之间的关系解耦合使其灵活后,对其行为作出相应的管理,目的也是减少不必要的资源占用,运行时间过长的问题,提高系统运行效率。

小结:在此鸣谢雨田兄弟博客的启发和给予的动力,还望多多指正。

猜你喜欢

转载自blog.csdn.net/xml1996/article/details/81295905
今日推荐