【设计模式】Template Method模式
2015-10-04 20:43
239 查看
OO基金会
封装
多态
继承
OO原则
封装变化
多用组合,少用继承
针对接口编程。不针对实现编程
为交互对象的松耦合设计而努力
类应该对扩展开放,对改动关闭
依赖抽象,不要依赖详细类
仅仅和朋友交谈
别找我,我会找你
OO模式
模版方法模式——在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。
模版方法使得子类能够在不改变算法结构的情况下,又一次定义算法中的某些步骤。
1. “模版方法”定义了算法的步骤,把这些步骤的实现延迟到子类。
2. 模版方法模式为我们提供了一种代码复用的重要技巧。
3. 模版方法的抽象类能够定义详细方法,抽象方法和钩子。
4. 抽象方法由子类实现。
5. 钩子是一种方法,它在抽象类中不做事,或者仅仅做默认的事情,子类能够将模版方法声明为final。
6. 好莱坞原则告诉我们,将决策权放在高层模块中。以便决定怎样以及何时调用低层模块。
7. 你将在真实世界代码中看到模版方法模式的很多变体,不要期待它们全都是一眼就能够被你认出的。
8. 策略模式和模版方法模式都封装算法。一个用组合,一个用继承。
9. 工厂方法是模板方法的一个特殊版本。
封装
多态
继承
OO原则
封装变化
多用组合,少用继承
针对接口编程。不针对实现编程
为交互对象的松耦合设计而努力
类应该对扩展开放,对改动关闭
依赖抽象,不要依赖详细类
仅仅和朋友交谈
别找我,我会找你
OO模式
模版方法模式——在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。
模版方法使得子类能够在不改变算法结构的情况下,又一次定义算法中的某些步骤。
1. “模版方法”定义了算法的步骤,把这些步骤的实现延迟到子类。
2. 模版方法模式为我们提供了一种代码复用的重要技巧。
3. 模版方法的抽象类能够定义详细方法,抽象方法和钩子。
4. 抽象方法由子类实现。
5. 钩子是一种方法,它在抽象类中不做事,或者仅仅做默认的事情,子类能够将模版方法声明为final。
6. 好莱坞原则告诉我们,将决策权放在高层模块中。以便决定怎样以及何时调用低层模块。
7. 你将在真实世界代码中看到模版方法模式的很多变体,不要期待它们全都是一眼就能够被你认出的。
8. 策略模式和模版方法模式都封装算法。一个用组合,一个用继承。
9. 工厂方法是模板方法的一个特殊版本。
相关文章推荐
- shell练习题讲解
- HDU 5467
- 整理介绍一些技术书籍(应届生求职必备)
- 2015年福州大学第12届程序设计大赛题解
- android开发学习笔记——权限
- kafka入门介绍
- html: Table合并行和列
- DBCP连接池配置参数说明
- 素性测试
- 气象数据格式
- autojump的安装和简单使用(环境:ubuntu14.04)
- 放松完毕回来准备继续...
- html: Table标签的初步使用
- J2EE中关于tomcat的maxIdle、maxActive、maxActive相关配置
- CSDN首页刊发对我的专访:我为什么要选择Rust?
- 软件测试难点总结
- API不是从业务抽象出来的(2)_举例说明
- API不是从业务抽象出来的(2)_举例说明
- API不是从业务抽象出来的(2)_举例说明
- html:段落的控制