`

notes

 
阅读更多

有关设计模式的:《Elements of Reusable Object-Oriented Software》一书由Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides四位作家合著而成,通常这四位作家叫做GoF(Gang of Four,四人组)。

该书提出了23种设计模式,又称GoF设计模式,这些设计模式针对面向对象设计(OOD)中的某些常见问题提出了具体的解决 方法(模式)。

[创 建型模式]


设计模式之 Abstract Factory - 抽象工厂模式
Abstract Factory模式也叫抽象工厂模式,它是对象创建型模式之一,它通过抽象工厂为客户(调用者)生成多类产品,抽象工厂负责管理子工厂对象,子工厂负责生 成某一类具体的产品对象。


设计模式之 Factory Method - 工厂模式
Factory Method模式也叫工厂方法模式,它是一种对象创建型模式,它把类的实例的创建延迟到子类中完成,父工厂类只定义创建对象的公共接口,而子工厂类则负责 生成具体的类的实例。

设计模式之 Builder - 建造者模式
Builder模式也叫建造者模式或者生成器模式,它是一种对象创建型模式之一,用来隐藏复合对象的创 建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。

设计模式之 Prototype - 原型模式
Prototype模式也叫原型模式,它是一种对象创建型模式,它采取复制原型对象的方法来创建对象 的实例。使用Prototype模式创建的实例,具有与原型一样的数据。

设计模式之 Singleton - 单态模式
Singleton模式也叫单态模式,它是一种对象创建型模式,它为一个类生成唯一的实例对象,并提 供一个对该实例的全局访问方法。


[构 造型模式]


设计模式之 Adapter - 适配器模式
Adapter模式也叫适配器模式,它是构造型模式之一,通过Adapter模式,可以改变已有类(或 外部类)的接口形式。


设计模式之 Bridge - 桥接模式
Bridge模式也叫桥接模式,它在调用方与被调用方之间使用一个起着“桥”作用的类,用来支持类的多方向 扩展。


设计模式之 Composite - 组合模式
omposite模式也叫组合模式,它是构造型的设计模式之一,通过递归手段来构造树形的对象结构, 并可以通过一个对象来访问整个对象树。


设计模式之 Decorator - 装饰模式
Decorator模式也叫装饰模式,它是构造型的设计模式之一,它为类的实例对象动态追加附加功 能,就好像装饰了对象的行为。

设计模式之 Facade - 外观模式
Facade模式也叫外观模式,它是构造型的设计模式之一,它为一组具有类似功能的类群,比如类库,子系统 等等,提供一个一致的简单的界面。这个一致的简单的界面被称作facade。

设计模式之 Flyweight - 享元模式
Flyweight模式也叫享元模式,它是构造型模式之一,它通过与其他类似对象共享数据来减小内存 占用。


设计模式之 Proxy - 代理模式
Proxy模式也叫代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以控制对 这个对象的访问。所谓代理类,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标类交互,而代理一般在交互的过程中 (交互前后),进行某些特别的处理。

[行 为模式]

  
设计模式之 Chain of Responsibility - 职责链模式
Chain of Responsibility(CoR)模式也叫职责链模式或者职责连锁模式,它是行为模式之一,该模式构造一系列分别担当不同的职责的类的对象来共同完 成一个任务,这些类的对象之间像链条一样紧密相连,所以被称作职责链模式。


设计模式之 Command - 命令模式
Command(CoR)模式也叫命令模式,它是行为模式之一,它通过被称为Command的类封装了对 目标对象的调用行为以及调用参数。


设计模式之 Interpreter - 解释器模式
Interpreter模式也叫解释器模式,它是行为模式之一,它是一种特殊的设计模式,它建 立一个解释器,对于特定的计算机程序设计语言,用来解释预先定义的文法。


设计模式之 Iterator - 迭代模式
Iterator模式也叫迭代模式,它是行为模式之一,它把对容器中包含的内部对象的访问委让给外部 类,使用Iterator(遍历)按顺序进行遍历访问的设计模式。


设计模式之 Mediator - 中介者模式
Mediator模式也叫中介者模式,它是行为模式之一,Mediator模式定义一个“中介”对象 来封装对象的交互行为。


设计模式之 Memento - 备忘录模式
Memento模式也叫备忘录模式,它是行为模式之一,它的作用是保存对象的内部状态,并在需要的时候 (undo/rollback)恢复对象以前的状态。

设计模式之 Observer - 观察者模式
Observer模式也叫观察者模式,Observer模式是行为模式之一,它的作用是当一个对象的 状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。


设计模式之 Template Method - 模板方法模式
Template Method模式也叫模板方法模式,它是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整 个算法的行为。

设计模式之 Visitor - 访问者模式
Visitor模式也叫访问者模式,它是行为模式之一,它分离对象的数据和行为。使用Visitor模 式,可以不修改已有类的情况下,增加新的操作。


设计模式之 Strategy - 策略模式
Strategy 模式也叫策略模式,它是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实 现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换。

设计模式之 State - 状态模式
State模式也叫状态模式,它是行为模式之一,State模式允许通过改变对象的内部状态而改变对象的行 为,这个对象表现得就好像修改了它的类一样。
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Notes SQL 8.5.1用于odbc连接Lotus Notes数据库

    Lotus Notes是一款强大的企业级协作应用软件,而SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。在标题和描述中提到的“Notes SQL 8.5.1”是IBM提供的一款工具,它允许开发者通过ODBC...

    notes 8.5 新功能详解

    ### Notes 8.5 新功能详解 #### 一、读信更智能 在Notes 8.5中,读取电子邮件变得更加智能化。用户可以通过多种方式快速识别和管理邮件,提高工作效率。 **具体功能介绍:** - **按颜色区分发件人**:通过设置...

    火热!!cfa一级2024最新notes下载

    "2024 notes"通常指的是针对2024年CFA考试的复习笔记或教材,这些材料通常由知名培训机构如Schweser等提供,精炼了官方学习材料,并加入了解题技巧和重点解析。SchweserNotes是CFA备考中广受欢迎的一套辅助资料,它...

    windows 手动安装Sticky Notes 便签.zip

    在不包含Sticky Notes 便签的操作系统中手动安装Sticky Notes 便签,windows server2016测试通过;包含x86及x64; 方法:1、新建 C:\Program Files\Sticky Notes 2、拷贝 en-US、slc.dll、StickyNotes.exe 至 C:\...

    Goodnotes手帐模版万年历

    Goodnotes手帐模版万年历是一款专为Goodnotes和Notability用户设计的资源,旨在提升用户的记事体验。这款模版集合包含了652页丰富的设计,覆盖了多种风格和用途,旨在帮助用户更好地规划日常生活、工作计划或是个人...

    如何改变LotusNotes 工作区字体的大小

    ### 如何改变LotusNotes工作区字体的大小 在日常工作中,我们经常需要根据个人习惯或视觉需求调整软件界面中的字体大小。对于使用LotusNotes的用户来说,更改工作区内的字体大小同样是一项实用的功能。本文将详细...

    Lotus Notes 自定义信头方法

    Lotus Notes,作为一款历史悠久且功能强大的邮件客户端,提供了自定义信头的方法,让用户的邮件更具特色。本文将详细介绍如何在Lotus Notes中定制专属的信头。 ### 一、理解Lotus Notes信头概念 在Lotus Notes中,...

    IBM LotusNotes JAVA库 NCSO.jar Notes.jar

    IBM LotusNotes是一款强大的企业级协同应用软件,它集成了电子邮件、日历、任务管理、文档共享、数据库等多种功能。在LotusNotes系统中,开发者可以利用其提供的API进行应用程序的开发,实现定制化的业务需求。这里...

    Notes客户端 用户惯用选项 配置端口

    在IT领域,Notes客户端是IBM Lotus Domino软件的一部分,用于访问和管理电子邮件、日历、任务和其他协作工具。当首次设置Notes客户端时,一个重要的步骤是配置端口,以便正确连接到服务器。本文将深入探讨Notes...

    2024年frm一级最新notes免费下载!

    2024年的FRM一级考试对于考生来说是一项重要的挑战,而Schweser Notes作为备考的重要参考资料,其更新版本的免费下载无疑为考生提供了宝贵的资源。 FRM一级考试主要涵盖金融市场与产品、定量分析、风险管理基础、...

    火热!2024年cfa三级notes免费下载!

    这次提供的免费下载资源包括了CFA三级的SchweserNotes和Quicksheet,这些都是备考的重要参考资料。 SchweserNotes是CFA备考过程中广泛使用的教材,由Kaplan Schweser出版,以其详尽的解释和实例而闻名。这套资料...

    lotus domino notes安装文档

    Lotus Domino Notes是一款由IBM开发的企业级协作软件,它包含了电子邮件、日历、任务管理、即时消息、数据库和应用程序开发等功能。本安装文档将详细阐述如何在操作系统环境中正确安装和配置Lotus Domino服务器以及...

    C-Primer-Plus-good-notes-.zip_Goodnotes window版_goodnotes window

    这个压缩包文件"**C-Primer-Plus-good-notes-.zip**"显然包含了一份针对该书的优质笔记,特别适合在Windows环境下使用Goodnotes阅读和学习。 **Goodnotes**是一款广受欢迎的数字笔记应用,尤其适用于Windows用户。...

    NOTES分类视图的生成

    NOTES分类视图的生成是LOTUS Notes应用开发中的一个重要环节,主要涉及到对视图(View)的定制和优化,以便更好地管理和展示数据。在NOTES中,视图是一种组织和检索数据库文档的方式,它允许用户按照特定的分类标准...

    Notes模板,适合于notes初学者!

    Notes模板详解 Notes是一款功能强大且灵活的协作软件,但许多用户并不了解Notes的模板机制和数据库结构,导致在使用Notes时遇到很多问题。今天,我们将详细介绍Notes模板的概念、创建模板的方法、模板的应用场景,...

    Notes与Office的接口

    本文主要探讨了如何使用Notes与Office之间的接口,特别是Word的邮件合并功能,来实现Notes数据库数据与Office程序的集成。这种集成能够帮助用户处理在Notes中难以完成的任务,例如标签打印、表格打印和修订显示。 1...

    火热!!cfa三级2025最新notes免费下载

    最新出的notes!免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费免费...

    Notes和Internet 口令的同步

    在IT环境中,Notes和Internet口令的同步是一项关键的配置,确保用户在使用Notes客户端和Web服务时能够方便地管理他们的登录凭证。以下是关于这个主题的详细解释: 首先,要实现Notes和Internet口令的同步,需要创建...

    NCSO.jar notes.jar pdfrender.jar JimiProClasses.zip

    标题中的"NCSO.jar"、"notes.jar"和"pdfrender.jar"以及"JimiProClasses.zip"都指向了Java相关的库文件和压缩包。这些文件在IT领域中扮演着重要角色,尤其对于开发和运行Java应用程序至关重要。下面将详细阐述这些...

    3M Post-it Notes Lite使用说明

    ### 3M Post-it Notes Lite 使用说明详析 #### 一、产品简介 3M Post-it Notes Lite 是由全球知名的办公用品制造商3M公司推出的PC软件版本的便签应用。这款软件模仿了3M公司经典的黄色便签纸,旨在为用户提供便捷...

Global site tag (gtag.js) - Google Analytics