`
mnieguomin
  • 浏览: 26745 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

设计模式

阅读更多

1 设计模式( Design pattern

是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。
GoF
设计模式 是第一次将设计模式提升到理论高度,并将之规范化,本书提出了 23 种基本设计模式,自此,在可复用面向对象软件的发展过程中,新的大量的设计模式不断出现。

2 为什么要提倡 "Design Pattern" 呢?

根本原因是为了代码复用,增加可维护性。设计模式的意图旨在解决某类需求,而 Java 提供的常规机制是无法满足这些需求的

3 可以根据设计意图将 23 种设计模式分为以下五类:

Ø 接口型设计模式 (Interface pattern);

Ø 责任型设计模式 (Responsibility pattern);

Ø 构造型设计模式 (Construction pattern);

Ø 操作型设计模式 (Operations pattern);

Ø 扩展型设计模式 (Extensions pattern);


4 根据设计意图对模式的分类:

Ø 接口型模式: Adapter( 适配器 ) 模式, Facade( 外观 ) 模式, Composite( 组合 ) 模式, Bridge( 桥接 ) 模式

Ø 责任型模式: Singleton( 单例 ) 模式, Observer( 观察者 ) 模式, Mediator( 中介者 ) 模式, Proxy( 代理 ) 模式, Chain of Responsibility( 责任链模式 ),Flyweight( 享元 ) 模式

Ø 构造型模式: Builder( 生成器 ) 模式, Factory Method( 工厂方法 ) 模式, Abstract Factory( 抽象工厂 ) 模式, ProtoType( 原型 ) 模式, Memento( 备忘录 ) 模式

Ø 操作型模式: Template Method( 模板方法 ) 模式, State( 状态 ) 模式, Stratege( 策略 ) 模式 ,Command( 命令 ) 模式, Intepretor( 解释器 ) 模式

Ø 扩展型模式: Decorator( 装饰器 ) 模式, Iterator( 迭代器 ) 模式, Visitor( 访问者 ) 模式

分享到:
评论
3 楼 mnieguomin 2012-01-13  
java_hq 写道
哥们,刚看了下pdf。觉得有个地方错了,单例模式那里。
上面写到第二个单例模式方法比第一个效率高,不用每次都生成对象。
不知这生成对象为何意?


单例模式(饿汉式单例类) 从速度和反应时间角度来讲,饿汉式单例类稍好
单例模式(懒汉式单例类) 单从资源利用效率角度来讲, 懒汉式单例类好些,由于使用同步它在性能方面是要差些,使用时候根据具体情况定
2 楼 java_hq 2012-01-12  
哥们,刚看了下pdf。觉得有个地方错了,单例模式那里。
上面写到第二个单例模式方法比第一个效率高,不用每次都生成对象。
不知这生成对象为何意?
1 楼 mnieguomin 2011-07-24  
只是些总结,详细内容后续给出,只是些个人的设计经验,欢迎大家板砖

相关推荐

    24种设计模式以及混合设计模式

    设计模式是软件工程中的一种重要思想,它是在特定情境下,为解决常见问题而形成的一套最佳实践。在本文中,我们将深入探讨24种设计模式,并结合混合设计模式的概念,以及它们在实际项目中的应用案例。 首先,设计...

    二十三种设计模式【PDF版】

    主要是介绍各种格式流行的软件设计模式,对于程序员的进一步提升起推进作用,有时间可以随便翻翻~~ 23种设计模式汇集 如果你还不了解设计模式是什么的话? 那就先看设计模式引言 ! 学习 GoF 设计模式的重要性 ...

    Java 经典设计模式讲解以及项目实战

    Java 经典设计模式讲解以及项目实战 设计模式简介:主要介绍各种设计模式的概念和运用场景等 设计模式综合运用:主要是笔者在实际工作中运用到的一些设计模式综合运用事例的提炼 Spring设计模式简介:主要是讲述...

    23种设计模式详解PDF

    设计模式 的分类 总体来说设计模式分为三大类: 创建型模式(5): 工厂方法模式 、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式(7): 适配器模式、装饰器模式、代理模式、外观模式、桥接模式、...

    GOF设计模式中英文+设计模式精解中英文

    GOF(Gang of Four)设计模式,由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四位专家在他们的著作《设计模式:可复用面向对象软件的基础》中提出,被誉为设计模式的经典之作。本资源包含了GOF设计...

    Head First 设计模式 +Java设计模式(第2版)

    《Head First 设计模式》与《Java设计模式(第2版)》是两本非常重要的IT书籍,专注于软件开发中的设计模式。设计模式是解决软件设计中常见问题的经验总结,它们提供了一种标准的方法来处理特定场景下的问题,使得代码...

    设计模式解析.pdf

    ### 设计模式解析:深入理解软件设计的核心原则与实践 #### 标题解析:设计模式解析 设计模式是软件工程领域的重要概念,旨在提供解决常见软件设计问题的模板或指导原则。《设计模式解析》这一标题暗示了书籍将...

    设计模式(包含5个设计模式)含源代码报告.rar

    这个压缩包文件"设计模式(包含5个设计模式)含源代码报告.rar"显然是一份宝贵的资源,它涵盖了五个核心的设计模式,并附带了详细的类图、源代码以及文档报告,这对于学习和理解设计模式至关重要。 首先,我们要探讨...

    设计模式之蝉

    在计算机科学领域,设计模式是软件工程中用于解决特定问题的一般性方案,它们是经过实践检验的最佳实践。这些模式被广泛应用于面向对象软件设计中,能够提高代码的可重用性、灵活性和可维护性。设计模式通常被划分为...

    python设计模式第2版.pdf

    设计模式是构建大型软件系统zui强大的方法之一,优化软件架构和设计已经逐渐成为软件开发和维护过程中的一个重要课题。 Python设计模式(第2版)通过11章内容,全面揭示有关设计模式的内容,并结合Python语言进行示例...

    软件设计模式(java版)习题答案.pdf

    软件设计模式(Java版)习题答案 本资源为软件设计模式(Java版)习题答案,由程细柱编著,人民邮电出版社出版。该资源涵盖了软件设计模式的基础知识,包括软件设计模式的概述、UML中的类图、面向对象的设计原则、...

    C_设计模式(23种设计模式)

    C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计模式(23种设计模式)C_设计...

    Head First设计模式.pdf

    全书用两章篇幅对设计模式和GRASP作了基本介绍,3种设计模式的讲解:对于每一种模式,先给出定义,接着通过类比方式用一个现实世界中的例子说明模式的应用,然后分别以C#和Java代码例述模式的架构实现。最后一章给出...

    设计模式那点事

    设计模式是软件工程中的一种重要概念,它代表了在特定情境下解决问题的可重用解决方案。《设计模式那点事》这本书的PPT为我们提供了一种深入理解和学习设计模式的途径。在这里,我们将深入探讨设计模式的核心概念、...

    java版本的设计模式的实现demo

    设计模式是软件开发中的经典实践,它们为解决特定问题提供了通用、可复用的解决方案。在Java编程中,运用合适的设计模式可以提高代码的可维护性、可扩展性和可复用性。以下是关于Java版本设计模式实现demo的一些补充...

    设计模式之美——教你写出高质量代码

    设计模式是软件工程中的一种最佳实践,它是在特定上下文中解决常见问题的经验总结。"设计模式之美——教你写出高质量代码"这个主题旨在帮助开发者更好地理解和应用设计模式,从而提升代码的质量和可维护性。设计模式...

    Java设计模式 设计模式介绍

    章节介绍:1、爪哇语言结构性模式之变压器模式介绍 2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立性模式介绍 4、单态创立性模式介绍 5、单态创立性模式介绍 6、观察者模式介绍7、责任链模式 8、设计模式之...

    设计模式:可复用面向对象软件的基础--详细书签版

     “[设计模式]在实用环境下特别有用,因为它分类描述了一组设计良好,表达清楚的面向对象软件设计模式。整个设计模式领域还很新,本书的四位作者也许已占据了这个领域造诣最深的专家中的半数,因而他们定义模式的方法...

    软件设计模式期末作业

    在软件开发领域,设计模式是经过时间和实践验证的解决方案模板,用于解决常见问题。本作业以“软件设计模式”为主题,特别关注了装饰模式、工厂模式和适配器模式的运用。这三种模式都是面向对象设计的核心部分,它们...

Global site tag (gtag.js) - Google Analytics