用户名: 密码: 验证码:
面向通用图元标准的内容数据建模机制的研究与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
图形用户界面(GUI)是各种计算机应用的重要组成部分。传统的编程式开发方法要求GUI应用开发者必须掌握至少一种GUI开发工具包以及对应的编程语言。声明性的GUI描述语言为开发者提供了更高效、简单的GUI设计和开发方法。脚本格式的语法使得GUI描述语言更容易掌握,也更方便阅读。但是绝大多数的GUI描述语言都只关注GUI应用可视部分(即GUI)的描述,忽略了对GUI内容数据的描述和建模,使得开发者仍然需要编写大量程序来管理和维护GUI内容数据。这不仅使得GUI与内容数据间交互的难度增大,而且降低了应用的可移植性。
    在现有的GUI描述语言中,通用图元标准(GUI XML)是一种较优秀的基于XML的GUI描述语言。它采用GUI抽象描述模型对GUI应用进行完整地建模。GUI抽象描述模型不仅可以描述各种复杂的跨平台GUI,还把GUI相关的内容数据也纳入到描述模型中来。
    本文对通用图元标准采用的GUI抽象描述模型进行了形式化描述,通过实体和关系两种高度抽象的元素,GUI抽象描述模型把GUI和内容数据有机地结合成为一个整体,极大降低了开发中内容数据处理方面的复杂度。结合MVC设计模式,本文分析了GUI抽象描述模型的特点。
    以GUI抽象描述模型为基础,本文提出了GUI内容数据的建模方法。通过定义数据依赖图和数据更新子图记录和表现数据间的依赖关系和变化。本文提出了数据依赖图和数据更新子图的构造和更新算法,该算法提高了内容数据在建模和维护时的计算效率。为了解决GUI与内容数据模型间的交互问题,本文还提出了数据绑定模型。
    作为内容数据模型在实际应用中的实例,论文介绍了RIA应用环境下的GUIXML应用架构和其中的重要核心组件——内容数据处理引擎,进一步证明了内容数据模型的可行性和易用性。最后,以一个具体应用场景为例,说明内容数据处理引擎如何配合通用图元标准简单高效地实现RIA应用。
Graphical User Interface (GUI) is one of the most important components ofvarious computer applications. In classic mode of GUI development, developers haveto learn at least one of all kinds GUI toolkit and programming language. DeclarativeGUI description languages provide developers simpler and more efficient methods forGUI designing and developing. However, most of these GUI description languagesonly focus on description of visual components of GUI and ignore the content datadescribing and modeling, so that developers still need to write much code to modeland maintain relevant content data. It increases the difficulty of the cooperationbetween GUI visual components and content data and decreases the portability ofGUI applications.
    Universal GUI Description Standard (GUI XML) is a powerful one of currentGUI description languages. It uses GUI Abstract Description Model (GADM) todescribe the whole GUI application. GADM does not only help developers todescribe all kinds of complex, cross-platform GUI, also includes the relevant contentdata in its description model. It decreases the difficulty of processing content data inapplication development.
    This thesis introduces GADM formally at first. The following sections focus oncontent data modeling of GUI applications. All conceptions, including Content DataModel (CDM), Data Dependency Graph (DDG) and Data Update Subgraph (DUS)are defined. And then, the algorithms of graph constructing and data updating areexplained in details. The Data Binding Model (DBM) is also provided to solve theproblem of cooperation of visual components and content data. As an implementationof content data model in RIA environment, Data Modeling Engine is illustrated. Atlast, we demonstrate how Data Modeling Engine is integrated with GUI XML toimplement a RIA application in a special scenario.
引文
[1] F. Buschmann, R. Meunier, H. Rohnert, P. Sommerland and M. Stal, Pattern-Oriented Software Architecture: A System of Patterns, John Wiley and Sons, 1996
    [2] Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns, August 1997
    [3] A.Hussey, D.Carrington, Comparing the MVC and PAC architectures: a formal perspective, Software Engineering. IEE Proceedings, Vol. 144, No.4, August 1997
    [4] Mats Johnson, CAOS—an extended object oriented model for dialogue design, Center for Human-Computer Studies, Uppsala University, L?gerhyddv?gen 18, S-752 37
    [5] Mats Johnson, Erik Bor?lv, VDL — a View Definition Language, Center for Human-Computer Studies, Uppsala University, L?gerhyddv?gen 18, S-752 37
    [6] Adrian Nye, Volume 2: Xlib Reference, Manual, 3rd Edition, 1138 pages, ISBN: 1-56592-006-6, O'Reilly & Associates, Inc., June 1992
    [7] Adrian Nye, David Smyth, Wcl 2.0: the Widget creation Library, The X Resource issue 2, O'Reilly & Associates, Inc., Spring 1992.
    [8] Hewett, Baecker, Card, Carey, Gasen, Mantei, Perlman, Strong and Verplank, ACM SIGCHI Curricula for Human-Computer Interaction CHAPTER 2: Human-Computer Interaction, June 3, 2004
    [9] Ga?lle Calvary, Jo?lle Coutaz, Laurence Nigay, From Single-User Architectural Design to PAC: a Generic Software Architecture Model for CSCW, CHI 97 Electronic Publications, 1997
    [10] R. E. Kurt Stirewalt, Spencer Rugaber, Automating UI Generation by Model Composition, IEEE 13th Conference on Automated Software Engineering (ASE'98) October, 1998
    [11] István Kollár, Rik Pintelon, Johan Schoukens, Gyula Simon, Complicated procedures made easy [GUI], IEEE Instrumentation & Measurement Magazine, September 2003
    [12] Peter Achten, Marko van Eekelen, Rinus Plasmeijer, Compositional Model-Views with Generic Graphical User Interfaces, PADL 2004, LNCS 3057, pp. 39–55, 2004
    [13] Cameron O'Rourke, A Look at Rich Internet Applications, ORACLE Magazine July/August 2004
    [14] Catherine H. Crawford, Asit Dan, eModel: Addressing the Need for a Flexible Modeling Framework in Autonomic Computing, Proceedings of the 10th IEEE Int.l Symp. on Modeling, Analysis, & Simulation of Computer & Telecom--munications Systems (MASCOTS.02), 2002
    [15] Michael J. Mahemoff, Lorraine J. Johnston, Handling Multiple Domain Objects with Model-View-Controller, Technology of Object-Oriented Languages and Systems 32, pages 28-39, 1999
    [16] Xiaohui Shen, Wei-keng Liao, Alok Choudhary, An Integrated Graphical User Interface for High Performance Distributed Computing, 2001 International Database Engineering & Applications Symposium (IDEAS '01) 07 16 -07, 2001
    [17] Yanhong Sun, Edward L. Jones, Specification-Driven Automated Testing of GUI-Based Java Programs, ACMSE '04, April, 2004
    [18] 吴刚,董金祥,葛建新,用户界面自动构造工具的结构模式,计算机辅助设计与图形学学报 Vol.6 No.1, Jan 1994
    [19] Bambookit Tutorial http://www.bambookit.com
    [20] Neil Deakin, XUL Tutorial April 15, 2004
    [21] Developing “Avalon”-based WinFX Applications, http://winfx.msdn.microsoft. com/library, 2005
    [22] Christophe Coenraets, An Overview of MXML, the Macromedia Flex Markup Language, Macromedia Flex Developer Center, http://www.macromedia.com /devnet/flex/articles/paradigm.html
    [23] The AWT in 1.0 and 1.1, http://java.sun.com/products/jdk/awt/
    [24] Desktop Java-Java Foundation Classes (JFC/Swing), http://java.sun.com/products /jfc/
    [25] Eclipse Group, SWT Standard Widget Toolkit, Eclipse Project, http://www.eclipse. org/swt/, 2004
    [26] GTK+ (The GIMP Toolkit), http://www.gtk.org/
    [27] Mozilla Layout Engine (Gecko), http://www.mozilla.org/newlayout/, September 2004
    [28] James Clark, Steve DeRose, XML Path Language (XPath) Version 1.0 http://www.w3.org/TR/xpath/ November 16,1999
    [29] XML Fragment Interchange Requirements Version 1.0, http://www.w3.org/TR/1998/NOTE-XML-FRAG-REQ-19981123, W3C Note, Nov 3, 1998
    [30] SOAP Specifications, http://www.w3.org/TR/soap/, 2004
    [31] 清华大学—IT Frontier 株式会社知识工程联合实验室 《GUI XML for JFC Swing 规范》 April 2005
    [32] 徐鹏,CNML 标准中的数据建模思想,中文新闻信息技术标准研制,“十五”国家重大科技专项“重要技术标准研究”课题,编号 2002BA906A70
    [33] 张鹏,徐鹏,Java 图形用户界面的 XML 描述方法,2004 年全国 Java 大会,2004 年7 月

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700