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

随时听讲座
每天看新闻
   
  JS/HTML 栏目
 
 
浏览(7631 次) 下载 (23 次)    
 
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()
运行效果