下载此文档

01 C#设计模式-设计模式概述.ppt


文档分类:IT计算机 | 页数:约37页 举报非法文档有奖
1/37
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/37 下载此文档
文档列表 文档介绍
www . ChinaSA . info D esign P atterns D esign P atterns 设计模式概述设计模式概述刘伟(Sunny) weiliu_china@ www . ChinaSA . info 大纲?引言?设计模式的诞生与发展?设计模式的定义与分类? GoF 设计模式简介?设计模式的优点 www . ChinaSA . info 引言?从三个实例说起……?实例一: 庞大的跨平台图像浏览系统?实例二: 不够灵活的影院售票系统?实例三: 重用第三方算法库时面临的问题 www . ChinaSA . info 引言?庞大的跨平台图像浏览系统?实例说明?某软件公司要开发一个跨平台图像浏览系统,要求该系统能够显示 BMP 、 JPG 、 GIF 、 PNG 等多种格式的文件,并且能够在 Windows 、 Linux 、 Unix 等多个操作系统上运行。系统首先将各种格式的文件解析为像素矩阵(Matrix) ,然后将像素矩阵显示在屏幕上,在不同的操作系统中可以调用不同的绘制函数来绘制像素矩阵。 www . ChinaSA . info 引言?庞大的跨平台图像浏览系统?初始设计方案 Image {abstract} BMPImage BMPWindowsImp JPGImage GIFImage PNGImage BMPLinuxImp BMPUnixImp JPGWindowsImp JPGLinuxImp JPGUnixImp GIFWindowsImp GIFLinuxImp GIFUnixImp PNGWindowsImp PNGLinuxImp PNGUnixImp www . ChinaSA . info 引言?庞大的跨平台图像浏览系统?问题?(1) 采用了多层继承结构,导致系统中类的个数急剧增加, 具体层的类的个数= 所支持的图像文件格式数×所支持的操作系统数?(2) 系统扩展麻烦,无论是增加新的图像文件格式还是增加新的操作系统,都需要增加大量的具体类,这将导致系统变得非常庞大,增加运行和维护开销 www . ChinaSA . info 引言?不够灵活的影院售票系统?实例说明?某软件公司为某电影院开发了一套影院售票系统,在该系统中需要为不同类型的用户提供不同的电影票打折方式,具体打折方案如下: ?(1) 学生凭学生证可享受票价 8折优惠; ?(2) 年龄在 10 周岁及以下的儿童可享受每张票减免 10 元的优惠(原始票价需大于等于 20 元); ?(3) 影院 VIP 用户除享受票价半价优惠外还可进行积分,积分累计到一定额度可换取电影院赠送的奖品。?该系统在将来可能还要根据需要引入新的打折方式。 www . ChinaSA . info 引言?不够灵活的影院售票系统?初始实现方案//电影票类 class MovieTicket { private double price; // 电影票价格 private string type; // 电影票类型…… // 计算打折之后的票价 public double Calculate () { // 学生票折后票价计算 if((" student")) { (" 学生票: "); return * ; } // 儿童票折后票价计算 else if((" children") && >= 20 ) { (" 儿童票: "); return - 10; } //VIP 票折后票价计算 else if((" vip")) { (" VIP 票: "); (" 增加积分! "); return * ; } else { return ; // 如果不满足任何打折要求,则返回原始票价} } } www . ChinaSA . info 引言?不够灵活的影院售票系统?问题

01 C#设计模式-设计模式概述 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数37
  • 收藏数0 收藏
  • 顶次数0
  • 上传人yzhluyin1
  • 文件大小0 KB
  • 时间2016-04-13