关闭

设计模式-3

196人阅读 评论(0) 收藏 举报

实例:设计一个文档编辑器 Lexi

文档能够以不同的格式风格自由混合文本和图形。

一.设计问题:

    1.文档结构: 对文档内部表示的选择几乎影响设计的每个方面。所有的编辑、格式安排、显示和文本分析都涉及到这种表示。我们怎样组织这个信息会影响到应用的其他方面。

    2.格式化: 是怎样将文本和图形安排到行和列上的?哪些对象负责执行不同的格式策略?这些策略优势怎样和内部表述相互作用的。

    3.修饰用户界面: Lexi的用户界面包括滚动条、边界和用来修饰文档界面的阴影。这些修饰有可能随着用户界面的演化而发生变化。因此,在不影响应用其他方面的情况下,能自由增加和取出这些修饰十分重要

    4.支持多种视感标准 应不需做较大修改就能适应不同的视感标准,如Motif和Presentation Mangager等

    5.支持多种窗口系统  不同的视感标准通常是在不同的窗口系统上实现的。其设计应尽可能独立于窗口系统

    6.用户操作 用户通过不同的用户界面控制lexi.包括按钮盒下拉菜单。这些界面应对的功能分散在整个应用对象中。这里的难点在于提供一个统一的机制,即可以访问这些分散的功能,又可以对操作进行撤销。

   7.拼写检查和连字符  怎样支持像检查拼写错误和决定连字符的连字点 这样的分析操作的?当我们不得不添加一个新的分析操作时,我们怎样尽量少修改相关的类。

二.文档结构

    从根本上说,一个文档只是对字符、线、多边形和其他图形元素的一种安排。一个文档作者并不将这些元素看做图形项,而是看做文档的物理结构--行、列、图形、表和其他子结构。而这些子结构也有自己的子结构。

   用户界面应该让用户直接操纵这些子结构。如,一个图表当作一个单元 ,而不是个别图形原语的一组集合。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:12706次
    • 积分:358
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:16篇
    • 译文:1篇
    • 评论:1条
    文章分类
    最新评论