python 设计模式之模板方法模式
2024-08-30 08:24:28
1.模板方法模式定义
模板模式定义如下:定义一个操作中的算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定的步骤。子类实现的具体方法叫作基本方法,实现对基本方法高度的框架方法,叫作模板方法。
2.模板方法模式的优点
可变的部分可以充分扩展,不变的步骤可以充分封装;
提取公共代码,减少冗余代码,便于维护;
具体过程可以定制,总体流程方便掌控。
使用模板方法可以将代码的复用最大化
子类只需要实现自己的方法,将算法和实现的耦合降低。
3.模板方法模式的使用场景
某超类的子类中有公有的方法,并且逻辑基本相同,可以使用模板模式。必要时可以使用钩子方法约束其行为。
4.模板方法模式的缺点
模板模式在抽象类中定义了子类的方法,即子类对父类产生了影响,部分影响了代码的可读性。
5.举个例子
不用模板方法模式的时候
用模板方法模式的时候
煮完茶,煮完咖啡,还可以接着煮糖水,煮黑芝麻糊,煮豆浆,煮米糊,煮。。。。。
煮的多的话,用模板方法模式就能省很多代码了
参考
https://segmentfault.com/a/1190000017225491?utm_source=tag-newest
https://www.cnblogs.com/liuqingzheng/articles/10039693.html
https://blog.csdn.net/chenvast/article/details/79193248
最新文章
- mysql 重置root密码
- Tyvj 题目1463 智商问题(分块)
- sqlalchemy 优化count()……
- How Tomcat Works读书笔记之升级架构
- Python 共享和上传函数模块到PyPI
- git设置对比工具
- topcoder srm 610 div2 250
- python image模块
- RAC优化大框架的分配(jumbo frame)
- [转载]Python实现浏览器自动化操作
- 【转】vim替换命令
- JAVA 平台
- Linux-父子进程的简单同步
- Percona-Toolkit 之 pt-table-checksum 总结
- C# deep copy List
- 将逗号分隔的字符串转换为Python中的列表
- echarts动态添加数据
- 用HTML+CSS实现一个计科院网站首页静态页面
- 移动APP开发框架盘点
- Facebook在代码里下毒,百度身受重伤。。。