摘要: 职责链模式(Chain Of Responsibility Design Pattern) 模板模式、策略模式,职责链模式具有相同的作用:复用和扩展 将请求的发送和接收解耦,让多个接收对象都有机会处理这个请求。将这些接收对象串成一条链,并沿着这条链传递这个请求,直到链上的某个接收对象能够处理它为止。 阅读全文
posted @ 2021-01-19 18:03 kudo_shini 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 策略模式(Strategy Design Pattern) 定义一族算法类,将每个算法分别封装起来,让它们可以互相替换。策略模式可以使算法的变化独立于使用它们的客户端(这里的客户端代指使用算法的代码)。 工厂模式是解耦对象的创建和使用,观察者模式是解耦观察者和被观察者。策略模式跟两者类似,也能起到解 阅读全文
posted @ 2021-01-19 18:00 kudo_shini 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 模板模式(Template Method Design Pattern) 模板模式主要是用来解决复用和扩展两个问题 模板方法模式在一个方法中定义一个算法骨架,并将某些步骤推迟到子类中实现。模板方法模式可以让子类在不改变算法整体结构的情况下,重新定义算法中的某些步骤。 模板模式作用一:复用 模板模式作 阅读全文
posted @ 2021-01-19 17:59 kudo_shini 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 观察者模式(Observer Design Pattern) 观察者模式(Observer Design Pattern)也被称为发布订阅模式(Publish-Subscribe Design Pattern) 在对象之间定义一个一对多的依赖,当一个对象状态改变的时候,所有依赖的对象都会自动收到通知 阅读全文
posted @ 2021-01-19 17:58 kudo_shini 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 享元模式(Flyweight Design Pattern) 享元模式原理与实现 享元模式的意图是复用对象,节省内存,前提是享元对象是不可变对象。 当一个系统中存在大量重复对象的时候,如果这些重复的对象是不可变对象,我们就可以利用享元模式将对象设计成享元,在内存中只保留一份实例,供多处代码引用。 它 阅读全文
posted @ 2021-01-19 14:48 kudo_shini 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 组合模式(Composite Design Pattern) 主要是用来处理树形结构数据 将一组对象组织(Compose)成树形结构,以表示一种“部分 - 整体”的层次结构 组合模式的设计思路,与其说是一种设计模式,倒不如说是对业务场景的一种数据结构和算法的抽象。其中,数据可以表示成树这种数据结构, 阅读全文
posted @ 2021-01-19 14:47 kudo_shini 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 门面模式/外观模式(Facade Design Pattern) 门面模式为子系统提供一组统一的接口,定义一组高层接口让子系统更易用。 门面模式的原理与实现 假设有一个系统 A,提供了 a、b、c、d 四个接口。系统 B 完成某个业务功能,需要调用 A 系统的 a、b、d 接口。利用门面模式,我们提 阅读全文
posted @ 2021-01-19 14:46 kudo_shini 阅读(48) 评论(0) 推荐(0) 编辑