前言
设计模式的简单理解,说的不对的勿喷,给我留言即可,因为留了我也不一定改,但是不留我也不一定不改
1、单例模式
定义:保证一个类只有一个实例,并提供一个访问他的全局访问点。
我的理解:生成
对象 的工厂,定义好一个对象的所有属性,然后通过传递不同的值,生成不同的对象,但是不同的对象之间的共同点:
所有属性相同,属性的值不同。
2、策略模式
定义:定义一系列算法,把他们一个个封装起来,并且可以相互替换。
我的理解:有点像switch case,但是仅仅是像吧。策略模式首先
目的一样,只是采取不同的方式;举例说明:比如成都到深圳,可以飞机,可以火车高跌,可以汽车等,有钱的呢选择飞机,一般的选择高铁,没办法就汽车了,
重点:目的都是到深圳。
3、代理模式
定义:当直接访问一个对象不方便或者不满足需要时,为其提供一个替身对象来控制这个对象的访问
我的理解:
4、迭代器模式
定义:提供一种方法顺序访问一个聚合对象中的各个元素,而要不需要暴露该对象的内部表示。
我的理解:我的理解就是把一些复杂的处理,直接抽离出来处理。
5、发布订阅模式
定义:分离事件创建者和执行者,执行方只需订阅感兴趣的事件发生点。减少对象间的耦合关系,新的订阅者出现时不必修改原有代码逻辑。
我的理解:这个和单例模式有点相似,这个也可以通过一个工厂来理解,这个工厂是专门生产
方法;定义好
订阅方法、取消订阅方法和通知订阅者方法,实例化方法,每个实例化方法的名称不一样,处理逻辑在实例化方法中自定义,所以方法功能也是不一样,这个单利模式对象属性有所区别,有了方法,那么久可以使用方法了...
6、命令模式
定义:将一组行为抽象为对像并提供执行、撤销等方法,解决它与调用者的之间的耦合关系。
我的理解:这个就像我们的领导对下属的意思了,比较有趣,领导发出一个命令(工作任务)给下属团队,他只在乎结果是否完成,不在乎团队中谁做的,也不需要知道谁做的。