基于模板方法与抽象工厂的复合模式①

2020-06-20 07:32:18林欣欣郭元术运杰伦苏欣欣
计算机系统应用 2020年6期
关键词:产品方法

林欣欣,郭元术,运杰伦,苏欣欣

(长安大学 信息工程学院,西安 710064)

引言

自Erich Gamma、Richard Helm 等提出23 种“设计模式”[1,2]后,人们对于设计模式方面的研究越来越重视,程序设计人员对23 种设计模式进行了学习[3-5],并将其运用于实践.

软件设计模式描述的是在面向对象软件设计过程中针对特定问题提出的解决方案,应用该解决方案可以得到高内聚、低耦合并且复用性更高的程序.这些方案并不是人们一开始就采用的设计方案,而是为增加软件的灵活性和可复性进行的总结[1].

面向对象程序设计原则[6]包含开闭、依赖倒置、单一职责等7 条原则.为保证软件的灵活性、可复用性以及健壮性各个原则均是需要努力保证满足的.

程序设计人员在实践过程中发现独立的应用某一种设计模式,并不能很好的满足程序设计的需求.如文献《模板方法模式的改进》[7]通过将策略者模式嵌入到模板方法模式,从而对模板方法模式进行改进,该模式是将延迟到子类的算法的不同实现方式写入到各个类,各个类之间可以相互替换.

本文将讨论模板方法及抽象工厂模式,并将抽象工厂模式放在模板方法模式中进行讨论,最终给出复合模式.本文的复合模式侧重点在于延迟到子类的算法如果使用到具体的其他的类,如何在保证“单一职责”的原则下进行其他具体类对象的引用,并且使得各个子类的替换较为便捷.复合模式还在一定程度上解决了模板方法模式由于变……

登录APP查看全文

猜你喜欢
产品方法
好产品,可持续
现代装饰(2022年4期)2022-08-31 01:39:32
从灵感出发,邂逅好产品
现代装饰(2022年3期)2022-07-05 05:55:06
学习方法
用对方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
2015产品LOOKBOOK直击
Coco薇(2015年1期)2015-08-13 02:23:50
赚钱方法
捕鱼
新产品
玩具(2009年10期)2009-11-04 02:33:14
产品
个人电脑(2009年9期)2009-09-14 03:18:46