实例研究:设计一个文档编辑器(8)

Decorator模式
D e c o r a t o r ( 4 . 4 )模式描述了以透明围栏来支持修饰的类和对象的关系。事实上术语“修饰”的含义比我们这里讨论的更广泛。在D e c o r a t o r模式中,修饰指给一个对象增加职责的事物。我
们可以想到用语义动作修饰抽象语法树、用新的转换修饰有穷状态自动机或者以属性标签修饰持久对象网等例子。D e c o r a t o r一般化了我们在L e x i中使用的方法,而使它具有更广泛的实用。


获得跨越硬件和软件平台的可移植性是系统设计的主要问题之一。将L e x i重新定位于一个新的平台不应当要求对L e x i进行重大的修改,否则的话就失去了重新定位L e x i的价值。我们应当使移植尽可能地方便。
移植的一大障碍是不同视感标准之间的差异性。视感标准本是用来加强某一窗口平台上各个应用之间用户界面的一致性的。这些标准定义了应用应该怎样显示和对用户请求作出反映。虽然已有的标准彼此差别不大,但用户还是可以清楚地区分它们—一个应用程序在M o t i f平台上的视感决不会与其他某个平台上的完全一样,反之亦然。一个运行于多个平台的应用程序必须符合各个平台的用户界面风格。
我们的设计目标就是使L e x i符合多个已存在的视感标准,并且在新标准出现时要能很容易地增加对新标准的支持。我们也希望我们的设计能支持最大限度的灵活性:运行时刻可以改变L e x i的外观和感觉。

你可能感兴趣的:(UML建模,软件需求,编辑器,设计模式,需求分析,软件工程)