1.什么是 设计模式 ?
面向对象的软件设计经验总结。
目标是:使人们更加简单的、方便地复用成功的设计和体系结构。主要在更好得完成系统设计。
大师说 Christopher Alexander提出:“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动。”
上述的定义是对设计模式的广义定义。
我们将其应用到面向对象软件的领域内,就形成了对设计模式的狭义定义:设计模式就是解决某个特定的面向对象软件问题的特定方法。
2.设计模式 分类
设计模式自身组成,4个元素:
模式名称 取一个名字
问题 描述何时使用模式
解决方案 描述了模式的各个部分组成、相互关系以及如何协调
效果 模式应用达到的效果以及使用模式应当权衡的问题
根据使用模式的目的不同,将模式划分为3类:
● 创建型(Creational):解决如何创建对象的问题。
Abstract Factory 抽象工厂模式
Builder 生成器模式
Factory Method 工厂方法模式
ProtoType 原型模式
Singleton 单例模型
● 结构型(Structural):解决如何正确的组合类或对象的问题。
Adapter 适配器模式
Bridge 桥接模式
Compsite 组合对象模式
Decorator 装饰模式
Facede 外观模式
FlyWeight &享元模式
Proxy 代理模式
● 行为型(Behavioral):解决类或对象之间如何交互和如何分配职责的问题。
Chain of Responsibility 职责链模式
Command 命令模式
Iterator 迭代器模式
Mediator 中介者模式
Mementor 备忘录模式
Observer 观察者模式
State 状态模式
Strategy 策略模式
Template
Method 模板方法模式
Visitor 访问者模式
分享到:
相关推荐
24种设计模式介绍与6大设计原则24种设计模式介绍与6大设计原则
这个PDF文档“24种设计模式介绍与6大设计原则”旨在帮助开发者理解和应用这些模式,提高代码的可维护性和可扩展性。以下是其中的主要内容: 一、设计原则 1. 单一职责原则:一个类或模块应只有一个引起其变化的原因...
《PHP设计模式介绍》 英文原名:Guide.to.PHP.Design.Patterns 出版社:Marco Tabini & Associates, Inc. 作者:Jason E. Sweat 中文翻译:PHPChina 本书的目标 本书的目的不是为了全面的介绍各种类别的软件设计模式...
以下是关于"Android 24种设计模式介绍与6大设计原则"的详细阐述: 一、六大设计原则 1. **单一职责原则(Single Responsibility Principle, SRP)**:一个类或模块应该只有一个引起它变化的原因。这意味着每个类应...
《PHP设计模式介绍》导言 《PHP设计模式介绍》第一章 编程惯用法 《PHP设计模式介绍》第二章 值对象模式 《PHP设计模式介绍》第三章 工厂模式 《PHP设计模式介绍》第四章 单条模式 《PHP设计模式介绍》第五章 ...
24种设计模式介绍与6大设计原则.pdf 24种设计模式介绍与6大设计原则.pdf 最好的24种设计模式介绍与6大设计原则.pdf
本资源包含的"24种设计模式介绍与6大设计原则"高清PDF,对于Java开发者来说是一份宝贵的参考资料。 首先,我们来逐一探讨这24种设计模式: 1. 单例模式:确保一个类只有一个实例,并提供全局访问点。 2. 工厂方法...
PHP设计模式介绍.chm
在软件工程领域,设计模式是一种被广泛认可的、在特定情境下解决常见问题的模板,能够提供一种通用的设计语言,使得团队成员之间的沟通更为高效。JAVA作为一门广泛使用的编程语言,其设计模式不仅为开发者提供了解决...
24种设计模式介绍与24种设计模式.pdf..............................................................................................
### MVC设计模式介绍与详细讲解 #### 一、MVC设计模式概述 MVC(Model-View-Controller)设计模式是一种广泛应用于软件工程中的架构模式,尤其在Web应用开发领域非常常见。它将应用程序分为三个核心组件:模型...
章节介绍:1、爪哇语言结构性模式之变压器模式介绍 2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立性模式介绍 4、单态创立性模式介绍 5、单态创立性模式介绍 6、观察者模式介绍7、责任链模式 8、设计模式之...
大话设计模式 完整设计模式介绍
### 设计模式介绍及应用 #### 一、设计模式的起源与定义 设计模式的概念源自建筑学领域,随后被引入到软件工程中。1977年,Christopher Alexander出版了一本名为《A Pattern Language: Towns, Buildings, ...
### 软件架构与设计模式介绍 #### 一、软件架构 **1.1 架构定义** 软件架构是指软件系统的一种高级抽象,它包括软件元素(如组件)、这些元素的外部属性(如功能、性能)以及这些元素之间的交互关系。简而言之,...
本资源"设计模式介绍chm"聚焦于帮助开发者理解和应用这些模式,以提升编程能力。CHM文件是一种Windows帮助文档格式,通常包含丰富的文本、图片和索引,方便用户快速查找和学习信息。 首先,我们要讨论的是工厂模式...