OOP12:Policy-based Design
第12章 Policy-based Design基于策略的设计
12.1 The Multiplicity of Software Design
- 一个问题有很多中正确的解法,不同的解法在不同情况下具有不同的优势
- 软件需要支持用户的定制,因此需要提供多种情况对应的实现形式
12.1.1 例:创建一个对象的策略
// 直接new一个对象 |
12.1.2 通过policy控制内存分配的策略
// Library code: 用户控制实现哪个类型的分配 |
12.1.3 使用模板类作为模板参数
// Library code |
12.1.4 Policy-based Design的优点
- 使用策略给WidgetManager带来了很大的灵活性
- 我们可以从外部改变策略
- 我们可以提供我们自己的特定于我们具体应用的策略
- WidgetManager现在是一个小的代码生成引擎,用户可以配置它生成代码的方式。
- 策略的特性也使它们不适合动态绑定和二进制接口,所以在本质上策略和经典接口不存在竞争。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 华风夏韵!
评论