博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IOS设计模式学习(18)模板方法
阅读量:7038 次
发布时间:2019-06-28

本文共 471 字,大约阅读时间需要 1 分钟。

1 前言

模板方法模式是面向对象软件设计中一种非常简单的设计模式。其基本思想是在抽象类的一个方法定义“标准”算法。在这个方法中调用的基本操作由子类重载予以实现。这个方法成为“模板”。因为方法定义的算法缺少一些特有的操作。

2 详述

2.1 简述

定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使子类可以重定义算法的某些特定步骤而不改变该算法的结构。

2.2 何时使用

(1)需要一次性实现算法的不变部分,并将可变得行为留给子类来实现。

(2)子类的共同行为应该被提取出来放到公共类中,以避免代码重复。现有代码的差别应该被分离为新的操作。然后用一个调用这些新操作的模板方法来替换这些不同的代码。

(3)需要控制子类的扩展。可以定义一个在特定点调用“钩子”(hook)操作的模板方法。子类可以通过钩子操作的实现在这些点扩展功能。

2.3 模板方法调用5种类型的操作

(1)对具体类或客户端类的具体操作;

(2)对抽象类的具体操作;

(3)抽象操作;

(4)工厂方法;

(5)钩子操作。

3 结语

以上是所有内容,希望对大家有所帮助。

转载地址:http://qonal.baihongyu.com/

你可能感兴趣的文章
JavaScript 设计模式之工厂模式
查看>>
shell介绍
查看>>
五周第四次课(11月16日) 8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件...
查看>>
移动端web开发click touch tap区别
查看>>
11.20 正则介绍 , grep
查看>>
你的数据化经营为何屡战屡败,118位CTO给出的7个管理经验
查看>>
未来酒店——建设高效研发团队的经验分享
查看>>
LVS NAT模式搭建
查看>>
安装PHP5,安装PHP7
查看>>
yum更换国内源,yum下载rpm包和源码包的安装
查看>>
rpm包介绍 rpm工具用法 yum工具用法
查看>>
iOS 10 的推送 User Notifications Framework
查看>>
技术工坊|区块链中的p2p网络(上海)
查看>>
df命令、du命令、磁盘分区
查看>>
面试题:
查看>>
JVM Garbage First(G1) 垃圾收集器
查看>>
Spring Cloud构建微服务架构分布式配置中心
查看>>
Map集合
查看>>
Java干货分析:学习JVM须知的四大知识要点
查看>>
Qt5开发及实例学习之位置函数
查看>>