23 种设计模式汇集
如果你还不了解设计模式是什么的话?
那就先看设计模式引言 !
学习GoF 设计模式的重要性
建筑和软件中模式之异同
A. 创建模式
设计模式之Singleton(单态/单件) 阎宏博士讲解:单例(Singleton )模式
保证一个类只有一个实例,并提供一个访问它的全局访问点
设计模式之Factory(工厂方法和抽象工厂)
使用工厂模式就象使用new 一样频繁.
设计模式之Builder
汽车由车轮 方向盘 发动机很多部件组成,同时,将这些部件组装成汽车也是一件复杂的工作,Builder 模式就是将这两
种情况分开进行。
设计模式之Prototype(原型)
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
B. 结构模式
设计模式之Adapter(适配器)
使用类再生的两个方式:组合(new)和继承(extends),这个已经在thinking in java 中提到过.
设计模式之Proxy(代理)
以Jive 为例,剖析代理模式在用户级别授权机制上的应用
设计模式之Facade(门面?)
可扩展的使用JDBC 针对不同的数据库编程,Facade 提供了一种灵活的实现.
设计模式之Composite(组合)
就是将类用树形结构组合成一个单位.你向别人介绍你是某单位,你是单位中的一个元素,别人和你做买卖,相当于
和单位做买卖。文章中还对Jive 再进行了剖析。
设计模式之Decorator(装饰器)
Decorator 是个油漆工,给你的东东的外表刷上美丽的颜色.
设计模式之Bridge(桥连)
将牛郎织女分开(本应在一起,分开他们,形成两个接口),在他们之间搭建一个桥(动态的结合)
设计模式之Flyweight(共享元)
提供Java 运行性能,降低小而大量重复的类的开销.
C. 行为模式
设计模式之Command(命令)
什么是将行为封装,Command 是最好的说明.
设计模式之Observer(观察者)
介绍如何使用Java API 提供的现成Observer
设计模式之Iterator(迭代器)
这个模式已经被整合入Java 的Collection.在大多数场合下无需自己制造一个Iterator,只要将对象装入Collection 中,
直接使用Iterator 进行对象遍历。
设计模式之Template(模板方法)
实际上向你介绍了为什么要使用Java 抽象类,该模式原理简单,使用很普遍.
设计模式之Strategy(策略)
不同算法各自封装,用户端可随意挑选需要的算法.
设计模式之Chain of Responsibility(责任链)
各司其职的类串成一串,好象击鼓传花,当然如果自己能完成,就不要推委给下一个.
设计模式之Mediator(中介)
Mediator 很象十字路口的红绿灯,每个车辆只需和红绿灯交互就可以.
设计模式之State(状态)
状态是编程中经常碰到的实例,将状态对象化,设立状态变换器,便可在状态中轻松切换.
设计模式之Memento(注释状态?)
很简单一个模式,就是在内存中保留原来数据的拷贝.
设计模式之Interpreter(解释器)
主要用来对语言的分析,应用机会不多.
设计模式之Visitor(访问者)
访问者在进行访问时,完成一系列实质性操作,而且还可以扩展.
设计模式引言
设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难。你必须找到相关的对象,以适当的粒度将它们归
类,再定义类的接口和继承层次,建立对象之间的基本关系。你的设计应该对手头的问题有针对性,同时对将来的