设计模式之四----行为模式
行为模式
这种模式负责对象间的高效沟通和职责委派。
-
责任链模式
责任链模式的核心是解决一组服务中的先后执行处理关系。
责任链模式的核心部分是AuthLink类,AuthLlink next(),重点在于可以通过next()方式获取该链路需要处理的下一个节点。 -
命令模式
命令模式是行为模式中的一种以数据驱动的方式将命令对象使用构造函数的方式传递给调用者。调用者再提供相应的实现为命令执行提供操作方法。其核心逻辑是调用方不需要去关心具体的逻辑实现。
迭代器模式可以让我们以相同的方式,遍历不同的数据结构元素,这些元素结构包括:数组、链表、树等,而用户在使用遍历的时候并不需要去关心每一种数据结构的遍历处理逻辑,从而让使用变得统一易用。
备忘录模式是以可以恢复或者回滚,配置、版本、悔棋为核心功能的设计模式。在功能实现上是以不破坏原对象为基础增加备忘录操作类,记录原对象的行为从而实现备忘录模式。
-
观察者模式
观察者模式就是当一个行为发生时传递信息给另外一个用户接收做出相应的处理,两者之间没有直接的耦合关联。其模型结构可以分为三大块:事件监听、事件处理、具体的业务流程。
-
状态模式
状态模式描述的是一个行为下的多种状态变更。比如一个网站的页面,在登录与不登录下展示的内容是有差异的,这种登录与不登录就是通过改变状态,而让整个行为发生了变化。
-
策略模式
策略模式解决的是具有同类可替代的行为逻辑算法场景。
比如:不同类型的交易方式(信用卡、支付宝、微信)、生成唯一ID策略(UUID、DB自增、DB+Redis、雪花算法、Leaf算法)等,都可以使用策略模式进行行为包装,供给外部使用。 -
模板模式
模板模式的核心设计思路是通过在抽象类中定义抽象方法的执行顺序,并将抽象方法设定为只有子类实现,但不设计独立访问的方法。换句话说就是把你安排的明明白白。
-
访问者模式
访问者模式的核心在于同一个事物不同视角下的访问信息不同。
参考:
重学Java设计模式.pdf(提取码: m6gr)