设计模式是一门艺术,因为它们来源于生活,不要为了套用设计模式而去使用设计模式。我们在编写程序的时候用好设计模式可以防范于未然,它们可以很好地提供一种解决问题的方案。从古至今,我们在遇到问题的时候,都会去寻求帮助,咨询懂的人,或者去图书馆查阅资料,或者在电脑前面搜索,等等方法。在学习23种设计模式之前 ...
分类:
其他好文 时间:
2020-05-30 19:41:29
阅读次数:
98
观察者,貌似在很多科幻作品中都会有这个角色的出现。比如我很喜欢的一部美剧《危机边缘》,在这个剧集中,观察者不停的穿越时空记录着各种各样的人或事。但是,设计模式中的观察者可不只是站在边上看哦,这里的观察者是针对主体发生的状态改变来做出对应的动作。 Gof类图及解释 GoF定义:定义对象间的一种一对多的 ...
分类:
其他好文 时间:
2020-05-21 10:18:02
阅读次数:
44
设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。 1. 根据目的来分 1.1.根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式 3 种。 创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF 中提供了单例、原 ...
分类:
其他好文 时间:
2020-05-05 17:50:26
阅读次数:
67
一、定义与组成部分定义观察者(Observer)模式又名发布-订阅(Publish/Subscribe)模式。GOF给观察者模式如下定义:一、定义与组成部分1.定义2.观察者(Observer)模式又名发布-订阅(Publish/Subscribe)模式。GOF给观察者模式如下定义:3.定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。面向对象
分类:
其他好文 时间:
2020-04-28 15:12:22
阅读次数:
48
1. 设计模式定义 模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心思想,这样就能直接利用此方案,不必做重复劳动; GOF中的设计模式是对用来在特定场景下解决一般设计问题的类和相互通信的对象的描述; 2. 设计模式分类 GOF中共包含了23种设计模式,根据其目的可以将模式分为创 ...
分类:
其他好文 时间:
2020-04-07 22:11:19
阅读次数:
64
行为设计模式是识别对象之间的通信模式,行为模式涉及对象之间的责任分配,或者,将行为封装在对象中并将请求委托给它,也就是对象之间的关系。 涉及:* 状态模式中介模式* 观察者模式备忘录模式迭代器模式命令模式* 策略模式* 模板模式* 访客模式示例责任链模式 观察者模式 根据GoF定义,observer ...
分类:
其他好文 时间:
2020-03-27 21:43:19
阅读次数:
86
一、委派模式 委派模式(Delegate Pattern):指负责任务的调度和分配任务,跟代理模式很像,可以看做是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,而委派模式注重结果。(属于行为型模式,但它不属于GOF的23种设计模式之一。类名以Delegate和Dispatcher结尾的一 ...
分类:
其他好文 时间:
2020-03-25 01:28:04
阅读次数:
247
《大话设计模式》通篇都是以情景对话的形式,用多个小故事或编程示例来组织讲解GoF(设计模式的经典名著——Design Patterns: Elements of Reusable Object-Oriented Software,中译本名为《设计模式——可复用面向对象软件的基础》的四位作者Erich ...
分类:
其他好文 时间:
2020-03-10 21:28:09
阅读次数:
44
一、设计原则是什么? 有句话叫“人民群众是历史的创造者”,他的意思我理解为任何的理论都是基于具体的客观展现总结出来的,没有人民创造的既定事实,就无法出现任何的有理有据的理论模型。 对于面向对象的软件设计,最著名的一本书就应该是当年gof的那一本《设计模式:可复用面向对象软件的基础》。设计模式是面对具 ...
分类:
其他好文 时间:
2020-02-23 16:43:04
阅读次数:
89
插曲.简单工厂模式(Simple Factory Pattern) 介绍工厂方法模式之前,先来做一个铺垫,了解一下简单工厂模式,它不属于 GoF 的 23 种经典设计模式,它的缺点是增加新产品时会违背“开闭原则”。 1.模式动机 考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如 ...
分类:
其他好文 时间:
2020-02-04 10:31:49
阅读次数:
103