一、什么是设计模式 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石 ...
分类:
编程语言 时间:
2018-11-09 10:43:29
阅读次数:
136
从今年的七月份开始学习设计模式到9月底,设计模式全部学完了,在学习期间,总共过了两篇;第一篇看完设计模式后,感觉只是脑子里面有印象但无法言语。于是决定在看一篇,到9月份第二篇设计模式总于看完了,这一篇看完,脑子里面已经能够对绝大多数的设计模式能够说出其核心思想且可以画出类图也知道应用场景,算是一个进 ...
分类:
编程语言 时间:
2018-11-09 10:43:02
阅读次数:
176
java的设计模式大体上分为三大类: 创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。 结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。 行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命 ...
分类:
编程语言 时间:
2018-11-07 11:41:56
阅读次数:
175
一、什么是设计模式 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石 ...
分类:
编程语言 时间:
2018-11-07 11:21:49
阅读次数:
200
迭代子模式 迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象。它将迭代逻辑封装到一个独立的迭代子对象中,从而与聚集本身分开。迭代子对象是对遍历的抽象化,不同的聚集对象可以提供相同的迭代子对象,从而使客户端无需知道聚集的底层结构。一个聚集可以提供多个不同的迭代子对象,从而使得遍历逻辑的 ...
分类:
编程语言 时间:
2018-11-02 23:47:21
阅读次数:
232
备忘录模式 备忘录模式又叫快照模式,备忘录对象是一个用来存储另外一个对象内部状态快照的对象。备忘录的用意是在不破坏封装的条件下,将一个对象的状态捕捉,并外部化存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态,备忘录模式常与命令模式和迭代子模式一起使用。 访问者模式 访问者的目的是封装 ...
分类:
编程语言 时间:
2018-11-02 23:47:11
阅读次数:
232
策略模式 策略模式的用意,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。 环境角色:持有一个抽象策略角色的引用。 抽象策略角色:给出所有的具体策略类所要实现的接口。 具体策略角色:包装相关的算法或行为。 模板方法模式 模板 ...
分类:
编程语言 时间:
2018-11-02 23:46:58
阅读次数:
175
组合模式 在面向对象的语言中,树结构有着巨大的威力,一个基于继承的类型的等级结构便是一个数结构,一个基于合成的对象结构也是一个数结构。组合模式将部分与整体的关系用树结构表示出来,使得客户端把一个个单独的成分对象和由它们组合而成的合成对象同等看待。 抽象构建角色:一个抽象角色,给参加组合的对象规定一个 ...
分类:
编程语言 时间:
2018-11-02 23:34:39
阅读次数:
145
建造者模式 一个产品常有不同的组成部分作为产品的零件,有些情况下,一个对象会有一些重要的性质,在它们没有恰当的值之前,对象不能作为一个完整的产品使用,有些时候,一个对象的一些性质必须按照某个顺序赋值才有意义。建造者模式利用一个导演者对象和具体建造者对象,按步骤建造出所有零件,从而建造出完整的产品对象 ...
分类:
编程语言 时间:
2018-11-02 21:37:57
阅读次数:
130
传送门:JAVA设计模式——代理(静态代理) 序言: 在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的 ...
分类:
编程语言 时间:
2018-10-30 22:50:07
阅读次数:
286