1.[研磨设计模式笔记]设计模式基础

简介:

1.设计模式是什么

模式是什么。

模:就是模型、模板的意思;式:就是方式、方法的意思。

模式:可以作为/模型或模板//方式或方法/

设计模式是什么。

设计模式:是指在软件开发中,经过验证的,用于解决在特定环境下、重复重现的、特定问题的解决方案。

1.设计模式是解决方案

解决方案:就是解决方法,亦即是/解决问题/的方式或方法。

2.设计模式是特定问题的解决方案。

限制“特定问题”,通常一个设计模式仅仅/解决/某个或某些特定的问题。

3.设计模式是重复出现的、特定问题的解决方案。

只有这些/特定问题/“重复出现”,那么为这些/特定问题/总结/解决方案/才是有意思的。

4.设计模式用于解决在特定环境下、重复出现的、特定问题的解决方案。

限制“特定环境下”,因为不同的环境下,就算是相同的问题,解决办法/也不一定是一样的。

5.设计模式是经过验证的,用于解决在特定环境下、重复出现的、特定问题的解决方案。

只有经过验证的/解决方案/才算得上是/设计模式。

6.设计模式是指“在软件环境中”

设计模式的理解

1.设计模式是/解决/某些问题的/方法。

2.设计模式不是/凭空想象的,是经验的/积累和总结。

3.设计模式不是/一成不变的,而是/不断发展的。

4.设计模式不是软件行业独有的,各行各业都有自己的设计模式。

设计模式本身起源于建筑行业。

2.设计模式有什么

设计模式组成

在描述单个设计模式模式的时候,设计模式通常由以下部分组成:

模式名称、应用场景、解决方案和模式和模式讲解。

设计模式的分类

GOF著作中的23种设计模式,分为三类:

创建型模式:抽象了/对象/实例化过程,用来帮助/创建/对象的实例。

结构型模式:描述如何/组合/类和对象/以获得更大的/结构。

行为型模式:描述/算法和对象间/职责的分配。

3.设计模式的学习

为什么要学习设计模式

1.设计模式已经成为软件开发人员的“标准词汇”

就如同我们在汉语里面使用的成语一样。

2.学习设计模式是个人技术能力提高的捷径

设计模式是一些相对优秀的解决方案。

3.不用重复发明轮子

学习设计模式的建议

不要指望真正的设计模式的书籍既简单又有趣,一看就懂。那种书籍多半是科普性质的书籍。这也是为何很多朋友总感觉“懂”设计模式,却不会在实际项目中应用设计模式。










本文转自 LinkedKeeper 51CTO博客,原文链接:http://blog.51cto.com/sauron/1223444,如需转载请自行联系原作者
目录
相关文章
|
20天前
|
设计模式 Java
【设计模式系列笔记】抽象工厂模式
抽象工厂模式(Abstract Factory Pattern)是一种设计模式,属于创建型模式之一。它提供了一种方式来创建一系列相关或相互依赖的对象,而无需指定它们具体的类。抽象工厂模式通过引入抽象的工厂接口,使得客户端代码可以使用抽象的接口来创建一组相关的产品,而不关心这些产品的具体实现。
110 4
|
17天前
|
设计模式 调度
【设计模式系列笔记】中介者模式
中介者模式(Mediator Pattern)是一种行为设计模式,它通过将对象之间的直接通信转移到一个中介对象中,来减少对象之间的耦合度。这种模式被用来处理一个对象与其他对象之间的交互,使得各对象之间不需要直接相互了解。
21 0
|
19天前
|
设计模式 Java 容器
【设计模式系列笔记】组合模式
组合模式(Composite Pattern)是一种结构型设计模式,它允许将对象组合成树状结构以表示部分-整体的层次结构。组合模式使得客户端可以统一处理单个对象和对象组合,而无需区分它们的类型。
43 12
|
19天前
|
设计模式
【设计模式系列笔记】桥接模式
桥接模式(Bridge Pattern)是一种结构性设计模式,它将抽象部分与实现部分分离,使它们可以独立变化而互不影响。桥接模式通过组合而不是继承的方式来实现这种分离。
30 6
|
4月前
|
设计模式 存储 算法
设计模式笔记
设计模式笔记
|
7月前
|
设计模式
[笔记]设计模式实践_SDLGUI封装系列之开源库SDL2_gui编译
[笔记]设计模式实践_SDLGUI封装系列之开源库SDL2_gui编译
|
9月前
|
设计模式 Java 关系型数据库
C++设计模式笔记
核心思想:从高层次角度讲,人们处理复杂性有一个通用的技术,及抽象。由于不能掌握全部的复杂对象,选择护士他的非本质细节,而去处理泛化和理想化的对象模型。
108 0
|
10月前
|
设计模式 缓存 JavaScript
|
10月前
|
设计模式 Java
设计模式笔记 -- 装饰者模式
现在有几种饮品,都是单品咖啡,顾客可以点单品咖啡也可以点单品咖啡加调料。
|
10月前
|
设计模式 Java 数据库连接
设计模式笔记 -- 桥接模式
现在有一个手机接口,下面有三个抽象子类,分别是锁屏密码解锁的手机、指纹解锁的手机、人脸识别解锁的手机,每个抽象子类下又有多个品牌的手机,每个首相子类下面下面有三个子类,小米、华为、魅族。这时如果再出现一种瞳孔识别的手机,又得新增一个抽象类,抽象类下面三个子类。这是传统的解决方式,类太多 ,不好维护