HeadFirst 设计模式 - Chapter8 模板方法设计模式

2015-06-29
阅读 1 分钟
2.7k
是一种重要的代码复用的重要技巧。从实现的角度来说,这符合封装变化的思想。同时,钩子是被声明在抽象类中,但是只有空的或者默认的算法实现,由子类决定是否进行覆盖,对算法的不同点进行挂钩。当两个或多个类执行的操作可以抽象为统一的步骤算法,只是在每步细节的实现上有差异,则可以依赖模板方法构造一种继承体系...

HeadFirst 设计模式 - Chapte7 适配器模式/外观模式

2015-06-25
阅读 2 分钟
4.3k
explanation: 这个模式可以通过创建适配器进行接口转换,让不兼容的接口变得兼容。 1.适配器实现目标接口 2. 使用对象组合:适配器与被适配者的组合(turkey).

HeadFirst 设计模式 - Chapte5 单例模式

2015-06-23
阅读 2 分钟
2.8k
这样有利于我们协调系统行为。比如在数据库连接或者线程池,或者在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取配置信息。这种方式简化了在复杂环境下的配置管理。

HeadFirst 设计模式 - Chapte 4工厂设计模式

2015-06-22
阅读 6 分钟
2.9k
工厂方法模式定义了一个创建对象的接口,但由子类决定(“决定”是指在编写创建者类creator类时,不需要知道实际创建的product是哪一个。选择使用了哪个子类,自然就决定了实际创建的产品是什么)要实例化的类是哪一个。 工厂方法让类把实例化推迟到子类。ConcreteCreator负责创建一个或多个具体产品,只有ConcreteCreator...

HeadFirst 设计模式 - Chapter 3 装饰者

2015-06-08
阅读 3 分钟
2.5k
从代码实现的角度来说,就是希望在不修改任何底层代码的情况下为对象赋予新的功能。当系统需要添加新功能的时候,通过新的代码来装饰原有类的核心职责或主要行为。这些新加入的代码相当于对原有核心代码的修饰,只在特定的应用场景下出现。