您的位置:首页 > 其它

设计模式定义

2016-01-29 15:26 281 查看
单例模式:单例就是一个实例。从始至终我们只需要维护这么一个实例,来节约资源。

工厂方法模式:定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。(就让实例化推迟到了子类)

抽象工厂模式:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。(象工厂就是工厂方法中不再是针对一种产品,而是多个不同类型的产品)

建造者模式:将复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。

原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。

适配器模式:使得新环境不用重新实现已经存在了的实现而很好的把现有的对象加入到新环境中来。

装饰者模式:动态地给一个对象添加一些额外的职责,就增加功能来说,Decorator模式比生成子类更为灵活。

代理模式:为其他对象提供一种代理以控制对这个对象的访问。(代理模式就是中间层。可以帮助我们增加或者减少对目标类的访问)

外观模式:为子系统中的一组接口提供一个一致的界面,用来访问子系统中的一群接口。

桥接模式:将抽象和实现解耦,使得两者可以相互转换。

组合模式:将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。(需求中有部分和整体的关系,并且部分和整体的表达近乎一致。就可考虑使用组合模式。)

享元模式:运用共享技术有效地支持大量细粒度的对象。

模板方法模式:定义一个模式流程,将变化的抽象,但是流程必须依靠父类定义的顺序。

策略模式:策略就是算法,封装多种算法,算法之间可以互相替换。

命令模式:将一个请求封装为一个对象,对请求排队或记录请求日志,以及支持可撤销的操作;从而使你可用不同的请求对客户进行参数化。

状态模式:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。

外观模式:为子系统中的一组接口提供一个一致的界面,用来访问子系统中的一群接口。

中介者模式:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。

责任链模式:请求在这个链上传递,直到链上的某一个对象决定处理此请求。

备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态。

设置模式分类

总体来说设计模式分为三大类:

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模 式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

其实还有两类:并发型模式和线程池模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: