设计模式之生活中的模板模式总结篇-创新互联

模板模式总结篇

广宗ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

在上一篇《设计模式之模板模式引导篇》中,我们使用了泡咖啡和泡茶的日常小场景讲解了模板模式的原理。本篇,我们就结合这个小案例,来对模板模式进行总结。

本文出自《凯哥学设计模式》系列教程。作者:凯哥Java(kaigejava)

一:模板模式定义(或内容)

在上一篇中,我们知道泡茶和泡咖啡都需要五个步骤。这五个步骤,其实就是算法骨架。

在具体是泡咖啡还是泡茶,是加牛奶还是加柠檬的时候,把这两个具体步骤延迟到具体真的子类中来实现了。这样就可以在不修改泡茶或泡咖啡的算法结构下,实现特定步骤。

总结模板模式定义:

先定义一个操作中的算法骨架,而将算法的某一个或者某些步骤的具体实现延迟到了子类中来实现,使得子类可以在不修改当前算法的结构情况下,重新定义当前算法的某些特定步骤。

模板模式属于行为模式的一种

二:角色

抽象的基类

实现某些具体步骤的子类

关键代码:公共的代码在基类中实现(如:烧水、倒入杯中、送个客人这三个步骤就在基类hotdrink中实现的)

其他步骤在具体子类中实现(如:是泡茶还是泡咖啡粉就是在具体的子类中实现的)

三:使用场景

在软件设计中,有些功能很类似,只是在某些环节不同而已。大多数环节都是相同的时候,可以使用模板模式。

将通用的算法或者步骤抽取到抽象类中,在具体子类中实现具体特定的操作

四:优缺点

优点:

封装不变的部分,将不变的部分抽取出来;

扩展可变部分,将可变的设置抽象方法,让具体子类来实现。

抽取的公共代码,便于后期维护

行为有基类来控制,具体操作有子类实现。

缺点:

每一个不同的实现都需要有一个子类来实现,这样就会导致类的数量大大的增加,使得系统更加庞大。

需要注意的地方:

为了防止算法骨架被恶意的破坏或者恶意的操作,一般在使用模板模式的时候,模板方法都会加上final这个关键字来限制。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

分享文章:设计模式之生活中的模板模式总结篇-创新互联
本文网址:https://www.cdcxhl.com/article42/cchhec.html

成都网站建设公司_创新互联,为您提供全网营销推广响应式网站手机网站建设网页设计公司软件开发网站策划

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站建设