设计模式
-
Delphi 设计模式:《HeadFirst设计模式》Delphi7代码—迭代器模式之DinerMenu
容器的主要职责有两个:存放元素和浏览元素。根据单一职责原则(SRP)要将二者分开,于是将浏览功能打包封装就有了迭代器。 用迭代器封装对动态数组的遍历: . . . . 运行结果: 特别感谢:在实现上面示例时,遇到动态数组做参数的问题。感谢盒子论坛里的ZuoBaoQuan兄出手相助!
-
设计模式之笔记–建造者模式(Builder)
建造者模式(Builder) 定义 建造者模式(Builder),将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 类图 描述 Builder:定义一个建造者抽象类,以规范产品对象的各个组成部分的建造。这个接口规定要实现对象的哪些部分的创建,并不涉及具体的对象部件的创建。 ConcreteBuilder:继承Build…
-
为什么23种设计模式中没有MVC
GoF (Gang of Four,四人组, 《Design Patterns: Elements of Reusable Object-Oriented Software》/《设计模式》一书的作者:Erich Gamma、Richard Helm、Ralph Johnson、John Vlissides)并没有把MVC提及为一种设计模式,而是把它当做“一组…
-
设计模式前端应用——策略模式
一、基础知识 1、定义:定义一系列算法,把它们一个个封装起来,并且它们可以相互替换 2、实际应用:减少if else的使用,在每种情况执行不同代码的情况下,我们通常使用if else语句来进行操作,使得当前函数代码量庞大,修改麻烦,不灵活。 二、举例 1、旅行采用的不同的交通工具,飞机,高铁,动车,汽车,火车等等 2、根据绩效发放年终奖金。绩效分A B …
-
设计模式原来如此-策略模式(Strategy Pattern)
策略模式中体现了两个非常基本的面向对象设计的原则:1.封装变化的概念。2.编程中使用接口,而不是对接口的实现。 策略模式的定义:定义一组算法,将每个算法都封装起来,并使它们之间可以互换。策略模式使这些算法在客户端调用它们的时候能够互不影响地变化。 策略模式的意义:策略模式使开发人员能够开发出由许多可替换的部分组成的软件,并且各个部分之间是弱连接的关系。 弱连…
-
设计模式原来如此-单例模式(Singleton Pattern)
简单介绍一下我对Singleton的理解,说的不好请大家多多指点。 单例模式的简单定义就是确保一个类只有一个实例,并提供一个全局访问点。 单例模式有哪些用处呢? 有一些对象其实我们只需要一个,比方说:线程池,缓存,对话框,处理偏好设置和注册表的对象,日志对象,充当打印机,显卡等设备的驱动程序的对象。事实上,这类对像只能有一个实例,如果制造出多个实例,就会导致…
-
设计模式的认识
学习设计模式很重要,这个我们大家都是很清楚的。下面我想谈谈自己对于设计模式的一些观点。 “模式”一词其意有多种解释。“模”,古书《说文》中解释:“模,法也。按,水曰法,木曰模,土曰型,金曰镕,竹曰笵。”;“式”意为“示范,榜样”。由此可见,“模式”一词中文意思可解释为事物的标准样式和方法。国外对“模式”也做出了自己的解释。建筑大师Christopher Al…