设计模式课件演示课件.pptVIP

  1. 1、本文档共95页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

设计模式

DesignPatterns;1.1什么是设计模式;什么是设计模式;模式的基本要素;设计模式的抽象层次;1.2SmalktalkMVC中的设计模式;MVC:Model/View/Controller;MVC;涉及的模式;涉及的模式;涉及的模式;;怎样描述设计模式;;classWindoSystemFactory{

当一个对象状态发生变化时,所以依赖于它的对象都将得到通知并自动刷新

解决方案(solution)

解决方案(solution)

Interpreter

增加一个新的子类(被访问对象),则需要更新所有Visitor类接口

功能增加的时候破坏了原有类的定义

可以对Delete操作进行撤销;

能对大多数功能支持Undo和Redo操作

Compositor(支持不同格式化算法的代码)

23种设计模式(结构)

iterator_b设为First

一个支持窗口的逻辑概念,另一个描述了窗口的不同实现

WindowImp:封装了窗口系统相关代码的抽象类

操作环境:Composition

23种设计模式(行为)

用户应该一致地对待图元

如何遍历、访问一个聚合的各元素

1是否可以使用AbstractFactory模式

用原型实例指定创建对象的种类,并通过拷贝这个原型来创建新的对象

在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态;23种设计模式(创建);23种设计模式(结构);23种设计模式(结构);23种设计模式(结构);5遍历和遍历过程中的动作

RemoveAll();

Ch2:实例研究

设计一个文档编辑器

允许多个用户界面对应一个操作

Windows类提供一个支持大多数窗口系统的方便的接口

便于将对象恢复到保存的状态

如何遍历、访问一个聚合的各元素

运用共享技术有效地支持大量细粒度的对象

Top()-CurrentItem():0;

将分析能力放在图元类中?不合适

5遍历和遍历过程中的动作

Bridge模式运行我们保持和加强对窗口的逻辑抽象(Window),而不触及窗口系统相关的代码(WindowImp)

FactoryMethod

5遍历和遍历过程中的动作

不能将用户操作设计为MenuItem的子类(为什么?)

可以交换组合顺序(scroller/border)

支持多种视感(look-and-feel)标准

放在Iterator类中?不合适

3Decorator模式

通过维护登记表(记录需要检查的字符串)

提供一个创建一系列相关或相互依赖对象的接口,而??需指定它们具体的类;23种设计模式(行为);23种设计模式(行为);23种设计模式(行为);23种设计模式(行为);23种设计模式(行为);设计模式所支持的设计的可变方面;设计模式所支持的设计的可变方面;设计模式所支持的设计的可变方面;设计模式所支持的设计的可变方面;增加新的工厂时需要改代码

for(g-First(PREORDER);!g-IsDone();g-Next()){

不能过分强调单个元素和元素组之间的差别

Composition:被格式化的图元

避免功能与文档接口紧耦合

避免了对窗口系统的直接依赖

Iterator类层次结构

IconWindow?PlatAIconWindow,PlatBIconWindow

Border类的设计:Glyph的子类

It’sbothaprocessandathing,bothadescriptionofathingwhichisalive,andadescriptionoftheprocesswhichwillgeneratethatthing.

WindowImp:封装了窗口系统相关代码的抽象类

描述了面向对象的递归组合的本质

Compositor(支持不同格式化算法的代码)

使得Window类层次保持相当较小并且较稳定

设计模式

DesignPatterns

在一个对象中封装窗口系统的功能,然后根据此接口实现Window类及其子类

支持最大限度灵活性:运行时刻可以进行改变

7Visitor类及其子类

界面风格?对窗口组件(Widgets)的规则

需要在合适的时间创建合适的对象;Lexi;2.1设计问题;;;2.2.1递归组合

RecursiveComposition;2.2.1递归组合

;;;2.2.3组合模式;IconWindow?PlatAIconWindow,PlatBIconWindow

将用户请求转变为对特定窗口系统的操作

提供一个

文档评论(0)

clevercatty + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档