问答题
.阅读以下有关表现层设计方面的说明,回答问题。
【说明】
某商业银行欲开发一套个人银行系统,为用户提供常见的金融服务,包括转账、查询、存款变更和个人信息管理等功能。该软件除了业务需求外,还有一些特殊的表现层需求:
(1)根据用户级别的不同,界面和可用功能是不同的。
(2)支持Web、Windows、手机App等多种不同类型的界面。
(3)考虑到将来功能的扩展,需要系统支持界面的定制以及动态生成等功能,以降低系统维护和新功能发布的成本。
经过对需求的讨论,该银行初步决定采用MVC模式设计个人银行系统的表现层,采用XML作为GUI的描述语言,并应用XML的界面管理技术来实现灵活的界面配置、界面动态生成和界面定。
问答题
1. 请从设计模式的角度,简要说明设计方案采用XML作为GUI描述语言的机制。
【正确答案】从设计模式的角度来说,整个XML表现层解析的机制是一种策略模式。在调用显示GUI时,不是直接调用特定表现技术的API,而是装载GUI对应的XML配置文件,然后根据特定的表现技术的解析器解析XML,得到GUI视图实例对象。这样,对于GUI开发人员来说,GUI视图只需要维护一套XML文件即可。
【答案解析】[考点] 本问题考查XML作为表现层控件描述语言的相关知识。
对于应用系统而言,GUI主要由GUI控件组成。控件本身可以被看作是一个数据对象,包含控件的位置信息、类型和绑定的事件等。因此可以采用XML来描述,将控件作为数据节点保存,控件的相关属性描述为该节点的属性。而XML本身是一种树型结构描述语言,可以很好地支持控件之间的层次结构。而应用程序的表现层仅需要针对该XML语言进行解析,再加上应用系统特有的表现技术,即可实现应用系统的界面。
从设计模式的角度来说,整个XML表现层解析的机制是一种策略模式。在调用显示GUI时,不是直接调用特定表现技术的API,而是装载GUI对应的XML配置文件,然后根据特定的表现技术的解析器解析XML,得到GUI视图实例对象。这样,对于GUI开发人员来说,GUI视图只需要维护一套XML文件即可。
问答题
2. 基于XML的界面管理技术可以实现灵活的界面配置、界面动态生成和界面定制,其思路是用XML生成配置文件及界面所需的元数据,按不同需求生成界面元素及软件界面,其技术框图如图所示。
【正确答案】(1)界面定制;(2)界面动态生成;(3)界面配置
界面定制:对用户界面的动态修改过程,在软件运行过程中,用户可按照需求和使用习惯,对界面元素的属性进行修改。软件运行结束后,界面定制的结果被保存。
界面动态生成:系统通过DOM API读取XML配置文件的表示层信息,通过数据存取类读取数据库中的数据层信息,运行时由界面元素动态生成界面。界面配置和定制模块在软件运行前后修改配置文件、更改界面内容。
界面配置:对用户界面的静态定义,通过读取配置文件的初始值对界面配置。由界面配置对软件功能进行裁剪、重组和扩充,以实现特殊需求。
【答案解析】[考点] 本问题考查基于XML的界面管理相关知识。
基于XML的界面管理技术可以实现灵活的界面配置、界面动态生成和界面定制。其思路是用XML生成配置文件及界面所需的元数据,按照不同需求生成界面元素和软件界面。基本思路如图所示。