可视计算机
可视计算机算强调对感兴趣的信息的可视描述和可视信息的直接处理 ,近年来它已成为一种重要的计算风格 。
基本信息
- 中文名
可视计算机
- 外文名
visual computer
- 简介
对信息进行可视描述
- 分类
3种
- 系统分类
3种
- 作用
使计算变得更加容易
基本信息
可视计算是在现代微处理器、计算机图形学、多媒体等技术日益发展成熟的条件下,新兴的一个研究把计算机构造成为可视建模设备的活跃领域。可视计算强调把抽象的事物以可视的形式反映给用户,是使计算变得更容 易,扩大人们的认识范围的一个有力手段。
分类
不同的使用者对计算机有着不同的要求:终端用户关心的是用户界面,程序员关心的是程序可视化和可视程序设计;科学工作者和数据分析员关心的是可视化和模拟。从这一角度来看,可视计算可分三个主要的分支,即:程序设计可视辅助、可视界面及可视化 。
程序可视化和可视程序设计是提高程序员生产率和正确性的有效途径。前者主要用于程序构造,后者主要用于程序调试、程序行为理解以及数据可视化,第二个分支是与 计算机的可视交互。依据实现交互的技术,可将各种系统分为三类:WIMP,虚拟现实,及自然人工景物技术。 第三个分支是科学可视化,它是可视计算中发展最为迅速的一 个领域。 它的迅速发展部分归功于计算能力和三维图形的发展,因为直到最近,才有可能绘制出一 个用户可与之交互的三维环境的令人信服的界面,当前有两种主要的科学可视化方法:基于面的可视化方法和基于体的可视化方法。
程序设计可视辅助
图形有强有力的表达能力,而传统语言又不尽人意,人们便对使用图形作为程序设计的辅助手段产生了极大兴趣。传统程序设计语言的主要缺陷在于它的线性程序设计风格,图形增加了表达的维数,使程序员能直接把思想中的概念反映到计算机中。这种程序设计风格对人来说更为自然,由于它自动地完成程序设计中的琐碎工作,因此增强了程序员开发和调试代码的能力,在程序设计的简单性和高效性上取得重大突破。
可视程序设计系统使程序员可以通过二维或高维计算功能和单元的显示技术来合成程序;程序可视化则是通过提供对程序不同方面的特征的可视来帮助人们调试和理解程序。可视程序设计系统根据图形在构造程序中的使用方式来进行分类:第一类是图形界面系统,用户通过与系统交互来指导系统生成程序;第二类是可视语言系统,除了用图象代替正文之外,这类系统与传统程序设计系统类似。根据用来生成程序的图象不同,对可视语言 系统可作进一步的分类。.
可视化系统是根据它们是否显示程序代码、程序数据或基本算法来进行分类的。根据它们是静态还是动态,程序代码和数据可视化系统还可进一步划分。
1、可视程序设计系统
(1)图形交互程序设计:图形交互系统提供给程序员交互式图形界面,程序员通过交互来指导系统生成一个供最终用户使用的程序,这种程序设计也叫不可见编程。大多数这类系统是解释执行的。
(2)可视程序设计语言系统:可视程序设计语 言有一个图形符号集,这些符号按一定语法规则排列就构造 出程序,图形符号的排列有严格定义的语义。就此而言,传统程序设计语言和可视程序设计语言的唯一区别,在于后者使用 的是图形符号、而不是正文表达式。但在编程的简单性和效率方面,二者相去甚远。根据在创建程序 时使用的图形抽象不同 ,现有的大多数可视程序设计语言可划分为三类:流图、图符、表和表格。
(3)流图:基于流图的可视程序设计系统使程序员能使用各种类型的图表和图来构造程序。流图被用来说 明程序的数据流或控制流。程序员创建的图形说明被编译为某一传统程序设计语言,或 直接由系统进行翻译。Grail系统把用户描述的流程图直接翻译成机器语言程序;PASCAL/HSD则是在PASCAL中加上标准流程图的图形符号。还有一些用数据流图来支持数据流语言程序自动生成的系统,如PROGRAPH。
(4)图符:在图符系统中,程序是通过称为图符的专门设计的图形符号及其之间的联系来构造程序的。通常,图符的互联方式是由系统对图符的排列斌予一定的语义来说明的。多数基于图符的程序设计系统提供预定义 的图符,并允许用户自定义图符。程序员通过某种方式把它们连成需要的控制流的路径表示来构造程序。使用图符的程序设计系统有:SunPict, Show and Tell, VenLisp等。
(5)表/表格:这类系统允许用户通过使用表或填写表格来构造程序。表格填写被认为是一种与用户 交互的容易方法,因而在许多系统中被大量地使用。如QEE允许用户用 二维表说明对关系数据库的查询;FORMANAGER使用户能用表格开发事务信息系统,FORMAL是一种基于表的数据库语言。
2、可视化系统
(1)程序可视化:程序可视化系统提供程序代码的静态或动态显示,帮助对程序代码结构和程序控制流的理解,以及对程序性能调试的分析。静态程序可视化系统通常借助于流程图来描述程序数据流,或借助整齐打印空行、空格、缩进格式、和注释等来增加程序的可读性。动态程序可视化系统以动画形式显示程序的执行过程,或以对应于程序的动画图画,或以加亮程序代码的方式,显示程序运行时的控制、程序、或数据视图。动态程序可视化对调试和分析分布式及多处理机软件特别有用,使程序员能了解系统与正在执行的程序之间的相互作用。PECAN是典型的多视图动态可视化系统。
(2)算法可视化:这种系统显示程序的基本操作,不仅体现 数据的转换和访间,也体现控制流。RonBaecker的系统能生成帧序列,产生电影效果的算法动画显示;BALSA系统则是在算法代码中插有趣事件过程调用来生成动画。
(3)数据可视化:数据可视化系统以静态或动画的方式来显示程序数据。静态数据可视化系统通常用于数据结构的自动生成,系统除提供显示库外,还允许用户自定义显示方式,并支持各种数据结构的可视、编辑、和浏 览等功能,如INSENCE。动态数据可视化通过交互式图形显示来定义程序数据结构之间的关系、描述程序运行过程中对数据的访问和修改,这类系统已在并行和分布式程序的性能调试中广泛使用,如PV。