设计模式(35)-----设计模式阶段性总结(一句话概括一个模式)

目录:

设计模式(1)------初始设计模式(回调函数) 

设计模式要从语义上出发,而不要从语法上出发,其实设计模式归根结底就是多态的有计划的组合。

设计模式(2)------行为型模式------观察者设计模式

想想气象站,根据天气的变化动态的通知观众实时天气。当一个对象的状态改变时,通知另一个对象作出相应的改变,而中间的观察和通知者就是主要的观察者设计模式。出版者+订阅者=观察者模式

设计模式(3)------行为型模式------观察者设计模式(jdk自带)

扫描二维码关注公众号,回复: 3983488 查看本文章

设计模式(4)------结构型模式------装饰者设计模式

想想inputStream它的铺天盖地的包装类。加一层包装就多一个功能。

设计模式(5)------结构型模式-----装饰者设计模式(IO流的应用)

设计模式(6)------结构型模式------装饰者设计模式(案例补充)

设计模式(7)-----创建型模式-----工厂设计模式(简单工厂设计模式)

设计模式(8)-----创建型模式----- 工厂设计模式(工厂模式)

想想spring创建bean对象。一个产品类对应着一个产品工厂类。

设计模式(9)----- 创建型模式-----工厂设计模式(抽象工厂模式)

想想spring创建bean对象。一组产品对应着一个产品工厂类

设计模式(9)----- 补充spring中的工厂设计模式(手写IOC容器)

 

设计模式(10)-----创建型模式----- 单例设计模式

想想springmvc的单例设置。内存中永远有一个对象。

 

设计模式(11)-----行为型模式-----命令设计模式

设计模式(12)----- 行为型模式-----命令设计模式(升级----一个开关控制多条命令)

设计模式(13)----- 行为型模式-----命令设计模式(升级----加一个撤销的命令)

设计模式(14)----- 行为型模式-----命令设计模式(升级----一个命令对象执行多条命令)

就是让请求者和执行者之间解耦,主要通过命令来调用相应的动作。

设计模式(15)-----行为型模式-----策略设计模式

最基本的设计模式,就是在算法之间随意的切换,主要是多态。

设计模式(16)-----结构型模式-----适配器设计模式

在实现了接口的内部调用其它的方法。偷换概念

设计模式(17)-----结构型模式-----外观设计模式

就是留一个方法,统一调用里面一组的数据。有点类似于抽象工厂设计模式。

设计模式(18)-----行为型模式-----模板设计模式

其实和外观有点像,只不过模板没有外观那么简洁,可能4个方法是一套流程,但是只有两个是用模板的。

设计模式(19)-----行为型模式-----迭代器设计模式

可以迭代不同数据结构的数据。

设计模式(20)-----结构型模式-----组合设计模式

想想菜单和菜单项

设计模式(21)-----行为型模式-----状态设计模式

每个状态对应着不同的行为(类或者方法)

设计模式(22)-----结构型模式-----代理设计模式-----静态代理

设计模式(23)-----结构型模式-----代理设计模式-----动态代理

找中介来处理这个问题。有点类似于中介模式。

设计模式(24)-----行为型模式-----责任链模式-----拦截器设计模式

想想拦截器,一层层的拦截就是责任链模式。

设计模式(25)-----创建型模式-----原型模式

就是clone

设计模式(26)-----创建型模式-----建造者模式

就是把创建复杂的对象简单化

设计模式(27)-----结构型模式-----过滤器模式

通过过滤器可以吧想要的信息过来过阿里,就是一个过滤器而已。

设计模式(28)-----结构型模式-----享元模式

减少创建对象的数目,它和单例不一样的地方就是无论如何,内存中就一个对象这事单例,一个对象假如根据某个属性来判断是不是相同的话,可能调用了20次只创建了5个对象。

设计模式(29)-----行为型模式-----解释器设计模式

是不是?是或者不是

设计模式(30)-----行为型模式-----中介者设计模式

假如现在有100个对象,他们互相之间都有联系,通过中介模式让他们去掉联系,所有的联系都指向中介,这样会条理清晰许多。

设计模式(31)-----行为型模式-----备忘录设计模式

想想ctr+z,对以前操作的信息做一个保留,比如存到map中或者list中,想去找到以前操作的信息的话直接去取就行了

设计模式(32)-----行为型模式-----空对象设计模式

假如不为空到一个类中,假如为空到另一个类中,空和非空都实现相同的接口。但是相同的方法里面处理的逻辑不一样。

设计模式(33)-----行为型模式-----访问者设计模式

想想权限就行了,不同的访问者可以设置不同的方法

 

设计模式(34)-----结构型模式-----桥接设计模式

主要是两个层面的对象随机的组合。比如说男生,女生一个层面,结婚,单身另一个层面,两个层面可以随机的组合。

猜你喜欢

转载自www.cnblogs.com/qingruihappy/p/9928330.html