设计模式-3

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

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

一.设计问题:

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

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

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

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

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

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

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

二.文档结构

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

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值