77范文网 - 专业文章范例文档资料分享平台

设计模式可复用面向对象软件的基础 第3章 创建型模式(11)

来源:网络收集 时间:2021-04-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

本书设计实例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。本书分类描述了一组设计良好,表达清楚的软件设计模式,这些模式在实用环境下有特别有用

一个RT F(Rich Text Format)文档交换格式的阅读器应能将 RT F转换为多种正文格式。该阅读器可以将 RT F文档转换成普通A S C I I文本或转换成一个能以交互方式编辑的正文窗口组件。但问题在于可能转换的数目是无限的。因此要能够很容易实现新的转换的增加,同时却不改变RT F阅读器。

一个解决办法是用一个可以将 RT F转换成另一种正文表示的 Te x t C o n v e r t e r对象配置这个 RT F R e a d e r类。当RT F R e a d e r对RT F文档进行语法分析时,它使用 Te x t C o n v e r t e r去做转换。无论何时 RT F R e a d e r识别了一个 RT F标记(或是普通正文或是一个 RT F控制字),它都发送一个请求给Te x t C o n v e r t e r去转换这个标记。 Te x t C o n v e r t e r对象负责进行数据转换以及用特定格式表示该标记,如下图所示。

Te x t C o n v e r t的子类对不同转换和不同格式进行特殊处理。例如,一个 A S C I I C o n v e r t e r只 负责转换普通文本,而忽略其他转换请求。另一方面,一个 Te X C o n v e r t e r将会为实现对所有 请求的操作,以便生成一个获取正文中所有风格信息的 T E X表示。一个 Te x t Wi d g e t C o n v e r t e r

将生成一个复杂的用户界面对象以便用户浏览和编辑正文。

每种转换器类将创建和装配一个复杂对象的机制隐含在抽象接口的后面。转换器独立于

阅读器,阅读器负责对一个 RT F文档进行语法分析。

B u i l d e r模式描述了所有这些关系。每一个转换器类在该模式中被称为生成器( b u i l d e r), 而阅读器则称为导向器( d i r e c t o r)。在上面的例子中, B u i l d e r模式将分析文本格式的算法(即RT F文档的语法分析程序)与描述怎样创建和表示一个转换后格式的算法分离开来。这使我们可以重

用 RT F R e a d e r的语法分析算法,根据 RT F文档创建不同的正文表示—仅需使用不

同的Te x t C o n v e r t e r的子类配置该RT F R e a d e r即可。

3. 适用性在以下情况使用B u i l d e r模式

当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。

当构造过程必须允许被构造的对象有不同的表示时。

4. 结构

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库设计模式可复用面向对象软件的基础 第3章 创建型模式(11)在线全文阅读。

设计模式可复用面向对象软件的基础 第3章 创建型模式(11).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1204958.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: