节点文献

一种可视化程序设计语言UVPL原型的研究与实现

The Research and Implementation of UVPL Based on Visual Programming Languages

【作者】 董新法

【导师】 沈夏炯;

【作者基本信息】 河南大学 , 应用数学, 2009, 硕士

【摘要】 人类的需求推动着技术的进步,在软件开发的道路上,技术人员们一直都在为了提高软件开发效率和软件对需求变化的适应性而不断努力着。目前几乎所有的软件开发环境(IDE)都被称为是可视化的,如Visual Studio 2005,Visual C++6.0,Deiphi等,但是它们普遍存在以下不足:第一,它们只是提供进行程序开发所需的可视化组件,未提供对数据对象及其关系和行为的可视化表达的直接支持;第二,它们只支持用户界面设计的可视化,对于主要的编码过程,未能提供可视化支持,程序员还需要逐行输入代码。在这种环境下,对于初学者来说将要花费很长时间进行代码的输入、拼写的校正,尤其是母语为非英语的程序员更不习惯于大量英文的输入。这就大大增加程序的出错概率,从而增加调试的时间,影响了开发效率,同时也影响了程序员对编程概念的理解,不符合真正意义上的可视化程序上的设计。还有一类是图形化性质的纯可视化编程语言,这一类语言往往是针对具体领域(如机器人行为控制)而提供的,比较直观地表现该领域的功能要求。但是程序结构相当复杂,开发出的程序难以阅读和理解,而且图形编译器的效率很低。本文参考了目前较流行的面向对象思想及组件化程序设计,针对一种小语言,定义了一种新的可视化程序设计语言UVPL(Uniform Visual ProgrammingLanguage)原型,以控件实现语法单元,根据预定的语法规则组成一系列的可视化语句。能够自动生成文本代码,而且能够生成指定语言的源程序,如Basic,C,Java,Pascal等,实现编码过程的可视化,从而大大降低了词法、语法的出错率,节省程序调试时间,提高开发效率。又因为语法成分为可视化组件,而组件本身可以将应用程序的设计过程和编码过程分开,通过组件,既可以重复利用自己创建的组件中的代码,也可以通过下载并安装其他开发人员创建的组件来重复利用别人的代码。本研究已初步实现,设计并开发出了9种基本控件做为语法单元,用这些控件可以完成一些简单的程序。实验表明此可视化程序上的设计思想对于需求的变化有很强的适应性,同时设计开发出的软件具有易维护性、可重用性高、适应性强等优点。

【Abstract】 The technological progress is driven by the human demands.In the process of software development,we put great effort on improving the efficiency of software development and software adaptability.Nowadays,almost all the software integrated development environments(IDE) have been claimed for visualization,such as Visual Studio 2005,Visual C++ 6.0,Delphi etc..But they have the insufficiency as following:First,they only afford the visual components which are needed in the programming development,never afford directly support on data object relationship and visual expressions of behaviors;Second,they only support the visualization of user interface design,as for the main programming process,it doesn’t realize the visualization,programmers still need to input the codes line by line.In the circumstance,for a beginner,it will take a long time to input the codes or correct the spelling,especially for the programmer whose mother tongue is not English.This greatly increased the probability of errors,increased the debugging time.Itreduced the development efficiency,bring negative impact on programming concept comprehension,that is not the true sense of visualization design process.Another is pure visual programming language based on graphics.This type of language is often targeted at specific areas(such as robot behavior control) and the comparatively intuitive to the performance of the functional requirements in the field,but it will make the program structure becoming very complex,the program is difficult to read or understand,and the graphic compiler is very inefficient.Based on the idea of object oriented and module programming design,for a small language,it puts forward a visual programming language named UVPL(Uniform Visual Programming Language),it makes the visual component as grammar cell,and constitute a series of visual sentences in accordance with predetermined grammar rules. Then it can be able to automatically generate the text codes,and to generate the designated codes in other existing languages,such as C,Java or Pascal,make it visual in the whole encoding process.It reduced morphology and syntax error rates,save the debugging time,improving the development efficiency.And because the grammar cells are visual components,the components can distinguish the designing process and coding process of application.With components,we can reuse the codes created by ourselves,or download and install the codes created by others.This study has achieved the initial design.Nine controls was developed as the basic grammar cells,and some simple programs could be completed with these controls.The experiments about the study show that the thinking of this study have a strong adaptability to the demand in changes.The advantages of those components are adapt to the change of demand. Programs designed are of easy maintenance,high reusability and adaptable etc.

【关键词】 程序设计语言可视化控件VPL
【Key words】 programming languagevisualizationcomponentVPL
  • 【网络出版投稿人】 河南大学
  • 【网络出版年期】2009年 10期
节点文献中: