Gof-23种设计模式名称列表
工欲善其事,必先利其器.
在真正使用设计模式之前,必须知道各个设计模式对应的场景.设计模式是针对某种固定的场景下产生的固定解决方案.只有明确的场景,才会有明确的设计方式和方法.
设计模式全集:
Abstract Factory:抽象工厂,提供一个创建一系列相关或者相互依赖的对象的接口,而无需指定他们具体的类.
Adapter:适配器,将一个类的接口转换为客户希望的另一个类的接口.Adpter模式使得原本由于接口不兼容而不能一起工作得那些类可以一起工作.
Briage:桥接,将抽象部分和它的实现部分分离,使他们能可以独立的变化.
Builder:建造者,将一个复杂对象的构建和它的表示分离.使得同样的构建过程可以创建不同的表示.
Chain of Responsibility:责任链,为解除发送者和接受者之间的耦合,而使多个对象都有机会处理这个请求.将这些对象连成一个链,并沿着这条链传递该请求,直到有一个对象处理该请求.
Command:命令,将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队和或者记录请求日志,以及支持可撤销的操作.
Composite:组合模式,将对象组合成树形结构以表示"部分-整体"的层次结构.Composite使得客户对单个对象和复合对象的使用具有一致性.
Decorator:装饰,动态地给一个对象添加一些额外地职责.就扩展功能而言,Decorator模式比生成子类方式更为灵活.
Facade:外观,为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用.
Factory Method:工厂方法,定义一个用于创建对象的接口,让子类决定将哪一个类实例化.Factory Method使得一个类的实例化延迟到子类.
Flyweigth:享元模式,运用共享技术有效地支持大量细粒度地对象.
Interpreter:解释器,给定一个语言,定义它的文法地一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子.
Iterator:迭代器,提供一种方法顺序访问一个聚合对象中的各个元素,而又不需暴露该对象的内部表示.
Mediator:中介者,用一个中介对象来封装一系列的对象交互.中介者使各对象不需要显示的相互引用,从而使其耦合松散,而且可以独立地改变他们之间地交互.
Mememto:备忘录,在不破坏封装型地前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.这样以后就可将该对象恢复至保存的状态.
Observer:观察者,定义对象间的一种一对多的关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新.
Prototype:原型模式,用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象.
Proxy:代理,为其他对象提供一个代理以控制对这个对象的访问.
Singleton:单例,保证一个类仅有一个实例,并提供一个访问它的全局访问点.
State:状态,允许一个对象在其内部状态改变时改变它的行为.对象看起来似乎修改了它所属的类.
Strategy:策略模式,定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换.Stategy可以使得算法的变化可独立于使用它的客户.
Template Method :模板方法,定义一个操作中算法的骨架,而将一些步骤延迟到子类中,Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤.
Visitor:访问者,表示一个作用于某对象结构中的各元素的操作.它使不可以在不改变各元素的类的前提下定义作用于这些元素的新操作.
Gof-23种设计模式名称列表的更多相关文章
- GOF 23种设计模式目录
经典的gof 23种设计模式,目录大纲查看. 1. Singleton(单例模式) 保证一个类只有一个实例,并提供访问它的全局访问点. 2. Abstract Factory(抽象工厂模式) 提供一个 ...
- GoF 23种设计模式概述
本文的结构: 一.设计模式总览 二.创建型设计模式 Creational Patterns 三.结构型设计模式 Structural Patterns 四.行为型设计模式 Behavioral Pat ...
- GOF 23种设计模式
设计模式目录 创建型 1. Factory Method(工厂方法) 2. Abstract Factory(抽象工厂) 3. Builder(建造者) 4. Prototype(原型) 5. Sin ...
- GOF 23种设计模式-单例模式
• 创建型模式: – 单例模式.工厂模式.抽象工厂模式.建造者模式.原型模式. • 结构型模式: – 适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模 式. • 行为型模式: – ...
- java设计模式:概述与GoF的23种设计模式
软件设计模式的产生背景 设计模式这个术语最初并不是出现在软件设计中,而是被用于建筑领域的设计中. 1977 年,美国著名建筑大师.加利福尼亚大学伯克利分校环境结构中心主任克里斯托夫·亚历山大(Chri ...
- 实践GoF的23种设计模式:SOLID原则(上)
摘要:本文以我们日常开发中经常碰到的一些技术/问题/场景作为切入点,示范如何运用设计模式来完成相关的实现. 本文分享自华为云社区<实践GoF的23种设计模式:SOLID原则(上)>,作者: ...
- 实践GoF的23种设计模式:建造者模式
摘要:针对这种对象成员较多,创建对象逻辑较为繁琐的场景,非常适合使用建造者模式来进行优化. 本文分享自华为云社区<[Go实现]实践GoF的23种设计模式:建造者模式>,作者: 元闰子. 简 ...
- 实践GoF的23种设计模式:装饰者模式
摘要:装饰者模式通过组合的方式,提供了能够动态地给对象/模块扩展新功能的能力.理论上,只要没有限制,它可以一直把功能叠加下去,具有很高的灵活性. 本文分享自华为云社区<[Go实现]实践GoF的2 ...
- GOF提出的23种设计模式是哪些 设计模式有创建形、行为形、结构形三种类别 常用的Javascript中常用设计模式的其中17种 详解设计模式六大原则
20151218mark 延伸扩展: -设计模式在很多语言PHP.JAVA.C#.C++.JS等都有各自的使用,但原理是相同的,比如JS常用的Javascript设计模式 -详解设计模式六大原则 设计 ...
随机推荐
- jquery tab mouseover 特效
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 使用Fiddler提高前端工作效率 (实例篇)
上篇中,我们对Fiddler Web Debugger有了简单的接触,也许你已经开始在用Fiddler进行HTTP相关的调试,在这一篇,我们将通过一个实例了解Fiddler的神奇魔法. 在我们前端开发 ...
- js 数组 var arr=[] 的用法总结
刚接触了一个js数组,用起来很头疼,总结一下 基本格式: var arr = [[name,value],[name2,value2],[name3,value3]]; 如何给 arr 动态添加元素 ...
- 推荐一款不错的GIF录制软件附带.NET源码
源码下载地址:http://www.51aspx.com/Code/ScreenToGif10
- Java多线程初学者指南(11):使用Synchronized块同步方法
synchronized关键字有两种用法.第一种就是在<使用Synchronized关键字同步类方法>一文中所介绍的直接用在方法的定义中.另外一种就是synchronized块.我们不仅可 ...
- sharepoint 2013 设置 显示详细错误信息
1. 在当前网站端口目录下的Web.config修改 例如80端口的站点路径为:C:\inetpub\wwwroot\wss\VirtualDirectories\80 (1)将<customE ...
- HTML5 Geolocation
http://diveintohtml5.info/geolocation.html http://msdn.microsoft.com/en-us/library/windows/apps/hh44 ...
- LiBsvm用于多分类时训练模型参数含义
The 'svmtrain' function returns a model which can be used for futureprediction. It is a structure a ...
- linux必会的60个命令
◆ 安装和登录命令:login.shutdown.halt.reboot.install.mount.umount.chsh.exit.last: ◆ 文件处理命令:file.mkdir.grep.d ...
- SharePoint 2010顶部链接导航栏的详细操作
转:http://www.360sps.com/Item/UseTopLink.aspx 在SharePoint 2010环境的页面中,导航链接总体上可以分为两类,一类是显示在左侧的快速启动栏,另一类 ...