设计模式理解

218 阅读2分钟

前言

设计模式的简单理解,说的不对的勿喷,给我留言即可,因为留了我也不一定改,但是不留我也不一定不改

1、单例模式

定义:保证一个类只有一个实例,并提供一个访问他的全局访问点。 我的理解:生成 对象 的工厂,定义好一个对象的所有属性,然后通过传递不同的值,生成不同的对象,但是不同的对象之间的共同点:所有属性相同,属性的值不同

2、策略模式

定义:定义一系列算法,把他们一个个封装起来,并且可以相互替换。 我的理解:有点像switch case,但是仅仅是像吧。策略模式首先目的一样,只是采取不同的方式;举例说明:比如成都到深圳,可以飞机,可以火车高跌,可以汽车等,有钱的呢选择飞机,一般的选择高铁,没办法就汽车了,重点:目的都是到深圳。

3、代理模式

定义:当直接访问一个对象不方便或者不满足需要时,为其提供一个替身对象来控制这个对象的访问 我的理解:

4、迭代器模式

定义:提供一种方法顺序访问一个聚合对象中的各个元素,而要不需要暴露该对象的内部表示。 我的理解:我的理解就是把一些复杂的处理,直接抽离出来处理。

5、发布订阅模式

定义:分离事件创建者和执行者,执行方只需订阅感兴趣的事件发生点。减少对象间的耦合关系,新的订阅者出现时不必修改原有代码逻辑。 我的理解:这个和单例模式有点相似,这个也可以通过一个工厂来理解,这个工厂是专门生产方法;定义好 订阅方法、取消订阅方法和通知订阅者方法,实例化方法,每个实例化方法的名称不一样,处理逻辑在实例化方法中自定义,所以方法功能也是不一样,这个单利模式对象属性有所区别,有了方法,那么久可以使用方法了...

6、命令模式

定义:将一组行为抽象为对像并提供执行、撤销等方法,解决它与调用者的之间的耦合关系。 我的理解:这个就像我们的领导对下属的意思了,比较有趣,领导发出一个命令(工作任务)给下属团队,他只在乎结果是否完成,不在乎团队中谁做的,也不需要知道谁做的。