火龙果会员
注册 找回密码
每月超过20万元免费资源,目前收到捐助2
您可以捐助,支持我们的公益事业。
1元 10元 50元 100元
 验证码,看不清楚?请点击刷新验证码 必填
  求知 文章 文库 Lib 视频 iProcess 课程 认证 咨询 工具 讲座 Modeler   Code
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
   
  JS/HTML 栏目
 
 
浏览(5327 次) 下载 (20 次)    
 
Template Method设计模式
多个算法具有类似的过程,过程中的每步因每个算法而不同,希望能够复用类似的过程,实现了算法算法过程复用,算法每个步骤实现的灵活性。
keywords:C# ,设计模式,Template Method
来源:   火龙果      更新日期:2015-6-23
评价       
 
 
Template Method设计模式
作者:俎涛
 
 问题  多个算法具有类似的过程,过程中的每步因每个算法而不同,希望能够复用类似的过程
 环境  每个算法的过程具有稳定性,多个算法的过程具有一致性
 解决方案  1. 把多个算法的类似步骤进行抽象,这样可以提炼出算法的公共过程骨架。
 如 TxtLoger和XmlLoger抽象为Loger

 2. 把算法的每个步骤留给子类实现。
 例如:TxtLoger和XmlLoger分别实现Connect(),Log(),Close()
 效果  实现了算法算法过程复用,算法每个步骤实现的灵活性。
 实例  TxtLoger和XmlLoger具有类似的过程,不同的步骤实现。
 
结构类图:
 
用例模型:
 
 用例名称  记录日志
 用例概述  打开目标文件,记录日志
 基本场景  1. 连接文件
 2. 写入日志
 3. 关闭文件
 
设计类图:
 
顺序图:
 
代码目录:
主程序Program.Main()
运行效果