




已阅读5页,还剩95页未读, 继续免费阅读
(电力系统及其自动化专业论文)基于bs模式的电力系统图形化分析软件的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
a b s 订a c t as t u d y0 ng r a p h i c a la n a l y s i s s o f t w a r eo fe l e c t r i cp o w e r s y s t e mb a s e d0 nb ,sm o d e a b s t r a c t a n a l y s i ss o f t w a r eo fe l e c t r i cp o w e rs y s t e m i st h ec o m b i n a t i o no fe l e c t r i c t e c h n o l o g y , c o m p u t e rt e c h n o l o g ya n di n f o r m a t i o nt e c h n o l o g y , w h i c hi sn e c e s s a r yf o r p o w e rs y s t e mp r o g r a m m i n g ,d e s i g n ,r u n n i n ga n dm a n a g e m e n t a tp r e s e n t ,m o s to f d o m e s t i cg r a p h i c a la n a l y s i ss o f t w a r ea r ep l a t f o r m b a s e do rc s ( c l i e n t s e r v e r ) m o d e b a s e d c o m p a r e dw i t hs o f t w a r eb a s e do nb s ( b r o w s e r s e r v e r ) m o d e ,t h e y h a v es o m el i m i t a t i o ni ns o f t w a r ei n s t a l l a t i o n ,u p d a t ea n dm a i n t e n a n c e ,e t c i ti sv e r y s i g n i f i c a n ta n du s e f u lt od e s i g ng r a p h i c a le l e c t r i cp o w e rs y s t e ma n a l y s i ss o f t w a r e b a s e do nb sm o d ew i t ht h el a s tw o r do fc o m p u t e rt e c h n o l o g y t h r e es o l u t i o n sh a v e b e e np r e s e n t e d : w i t ha s p n e t ;( 墓) w i t hj a v aa p p l e t ; w i t h n e tc o m p o n e n t t h et h i r dw a sc h o s e na f t e ras e a r c ha n ds o m ec o m p a r e i nt h i s p r o j e c tab sm o d eh a sb e e nd e s i g n e do nt h ef l a to f n e t , a n da g r a p h i c a l n e tc o m p o n e n th a sa l s ob e e nd e s i g n e dw i t hc 拌a n do o p ( o b j e c t o r i e n t e d p r o g r a m m i n g ) f o rt h e n e tc o m p o n e n tp r o v i d e s s u f f i c i e n te l e c t r i c e q u i p m e n tm o d e l s ,i ti sc o n v e n i e n ta n de f f i c i e n tf o rt h eu s e rt od r a wp o w e rs y s t e m g r a p ho nt h ew e bb r o w s e r t h es y s t e mu s e sm a t l a bw e b s e r v e ra sc o m p u t a t i o n a l e n g i n e ,a n dp r o v i d e sf o u rt y p e so fc o m p u t a t i o n ,p o w e rf l o w 、o p t i m a lp o w e rf l o w 、 r e a c t i v ep o w e rp r i c i n ga n da v a i l a b l et r a n s f e rc a p a b i l i t y t h ed a t af i l en e c e s s a r yt ot h e c o m p u t a t i o nc a nb eg e n e r a t e da n du p l o a d e dt ot h ec o m p u t a t i o n a ls e r v e ra u t o m a t i c a l l y b yt h e n e tc o m p o n e n t t h ep i v o t a lt e c h n o l o g yu s e di nt h ed r a w i n gm o d e la n d c o m p u t i n gm o d e li sd e s c r i b e di nd e t a i li nt h i sp a p e r , a n dh o w t ou s et h es o f t w a r ei s i l a b s t r a c t a l s op r e s e n t e dt a k i n gi e e e 一4b u s s y s t e ma sa l le x a m p l e t h es o f t w a r eh a sm a n ya d v a n t a g e s :z e r o m a i n t e n a n c ea tt h et i e ro fc l i e n t ; t e l e c o m m u t i n g ;m u c he a s i e rt oe x t e n d ,e t c k e y w o r d s :p o w e rs y s t e ma n a l y s i s ;b sm o d e ;n e tc o m p o n e n t ;c # :m a t l a b o p t i m a lp o w e r f l o w i l l 关于学位论文使用授权的说明 本人完全了解广西大学有关保留、使用学位论文的规定,即: 广西大学拥有在著作权法规定范围内学位论文的使用权,其中包 括:( 1 ) 已获学位的研究生必须按学校规定提交学位论文,学校可以 采用影印、缩印或其他复制手段保存研究生上交的学位论文;( 2 ) 为 教学和科研目的,学校可以将公开的学位论文作为资料在图书馆、资 料室等场所供校内师生阅读,或在校园网上供校内师生浏览部分内 容。 本人保证遵守上述规定。 ( 保密的论文在解密后遵守此规定) 作者签名 埠孽 导师签名 同期:塑! & d 丝的 日期: 之p , 田。z2 0 主要符号对照表 “2 ,1 , 只j , e 。 绋, q 。 q , q s ( j , s s 月 s 。 s , s i x s k s , s ( z s t 1 k l , 门 占 甜 m p , 主要符号对照表 :发电机i 的耗量参数 :发电机i 的有功出力( m w ) :负荷节点i 的有功负荷( m w ) :无功电源i 的无功出力( m v a r ) :负荷节点i 的无功负荷( m g a r ) :电容器组的无功出力 :调相机的无功出力 :发电机的额定视在功率 :发电机节点的集合 :无功电源节点的集合 :网络中所有母线的集合 :电容器组集合 :调相机组集合 :预想事故集合 :时间段集合 :线路约束集合 :有热稳定度安全要求的线路集合 :有功发电的利润率 :电容器的单位容量的资本成本 :电容器的平均使用率,一般取2 3 :发电机转子功角 :发电机转子转速的标么值 :发电机组的惯性时问常数 :原动机的机械输出功率 :发电机的电磁功率 :节点i 的电压幅值( v ) v l i 主要符号对照表 伊 8 | t g 。b ! t p , f ( x ) h ( x ) g ( 工) ( ) ,( r ) z “ y ,z ,w ,z ,w 厶u ,z , v g ( x ) v h ( x ) ,( x ) v 2 9 ( x ) v 2 h ( x ) “ p 4 ,4 “,a z ,d w s t e p p s t e p a k 。 盯 c :;口 节点i 的相角( r a d ) 节点f ,之间的相角差( r a d ) 导纳矩阵元素( f ,j ) 的实部,虚部 节点i ,间的支路潮流( m w ) 目标函数 等式约束函数向量 不等式约束函数向量 不等式约束上下界向量 松弛变量向量 拉格朗日乘子向量 对角元分别为,u ,z ,w 的对角阵 不等式约束方程组的梯度矩阵 等式约束方程组的梯度矩阵 等式约束方程组的雅克比矩阵 不等式约束方程组的海森矩阵 等式约束方程组的海森矩阵 扰动因子 单位向量 迭代修正量 原始步长 对偶步长 最大迭代次数 中心参数 计算精度 互补间隙 第1 章绪论 第1 章绪论 1 1 电力系统分析软件概述 电力系统分析软件是电力系统规划、设计、运行和管理过程中不可缺少的 重要工具。从1 8 8 2 年世界上第一个完整的电力系统在美国建立以来,电力系统 同益完善,电力系统规模迅速扩大,手工算法已经不能处理电力系统中的大量 数据和解决复杂的电力系统计算问题。计算机出现后,人们开始利用这种具有 强大的信息处理和计算能力的机器来解决电力系统的一些问题,电力系统分析 软件便应运而生。电力系统分析软件利用数学模型和数值方法对系统的运行特 性进行研究,是电力技术、计算机技术和信息技术的有机结合。它可以用来确 定规划设计方案、拟定运行方式、整定自动装置的控制参数、进行事故分析和 辅助运行人员做出f 确的决策,此外,还可用于教学和培训。实践证明,电力 系统分析软件在电力系统运行和科学研究中发挥了很大的作用。随着电力系统 规模的扩大和复杂性的增加,电气工程师和运行人员对电力系统分析软件的依 赖性将有增无减【2 o 现代化的电网迫切需要先进的分析手段,这对电力系统分析软件的功能、 精度、规模和速度都提出了更高的要求。新一代的电力系统分析软件应该是一 个功能完备的集成软件包,它应具备以下几个特点。 ( 1 ) 具有大规模的计算容量,能够满足实际电力系统工程的需求。 ( 2 ) 高效稳定的计算内核。通过采用各种先进的数学方法提高计算效率和计 算速度。 ( 3 ) 完整而准确的元件模型库。随着新的电气元件的应用,必须及时增添新 的模型。 ( 4 ) 友好性。具有友好的人机界面,并且使用方便。 ( 5 ) 开放性。软件的丌放性包括元件模型库的丌放性、输入输出数据的丌放 性和功能上的丌放性。 1 2 电力系统分析软件的发展和现状 电力系统分析软件的发展会受到当时计算机技术的限制,包括计算机的硬 第1 章绪论 件和软件。计算机的硬件直接影响到计算的速度和精度。先进的计算机操作系 统和编程软件可以提供友好的丌发环境,降低电力系统软件的开发难度,从而 缩短开发周期。 电力系统分析软件的发展大致经历了以下几个过程: 1 由命令行形式转变成图形用户界面( g u i ,g r a p h i c a l u s e r i n t e r f a c e ) 早期的操作系统d o s 占主导地位。由于d o s 操作系统本身所固有的一些 特点,基于d o s 平台的电力系统分析软件大都是命令行式的,缺乏直观性,使 用起来不方便。随着w i n d o w s 技术的发展,图形用户界面已成为当今软件的标 准界面,它具有学习容易、操作简单、可以定制等优点,图形化电力系统分析 软件也应运而生。图形化电力系统分析软件能够将大量的信息准确、快速的表 示在一个图形中,用户使用该软件时的大部分操作都能在图形上通过鼠标的点 击、拖动等来完成,取代了传统的填写、修改和阅读数据文件的方法。这种图 形化的输入方式易学易用口】。 在过去的几年罩,电力人员已经开发出不少可视化的电力系统分析软件。 早在1 9 9 1 年,m i k ef o l e y 等人就利用面向对象编程( o b j e c to r i e n t e d p r o g r a m m i n g ,o o p ) 思想利用c 语言开发出了具有图形用户界面的电力系统 分析软件 4 】a1 9 9 5 年,美国伊利诺伊( i l l i n o i s ) 大学的o v e r b y e 【5 】【6 1 丌发了运行于 w i n d o w s3 i 平台上的仿真软件p o w e r w o r l ds i m u l a t o r 。该软件采用了多种可视 化技术,包括潮流动画、电压和线路负荷等高线图、彩色报警指示器等。它的 7 0 版本使用了三维视图,能够清晰直观地同时显示多种变量 s 】_ 【8 1 。j i a ny a n g 、 m a xd a n d e r s o n 开发了教学软件包p o w e r g r a f ,它提供了一个g u i ,用户可以 很容易地画出单线图【。加拿大s i s l a m 等也开发了w i n d o w s 平台下用于电力 系统修复教学和训练的图形化软件包【l 。 2 由单机运行模式转变成网络运行模式( c s 模式) 早期的电力系统分析软件是单机版的,应用软件和数据库共用一台计算机。 随着数据库技术的发展和电力系统信息数量的r 益膨胀,本地型数据库早已不 能满足电力系统运行的需要,于是出现了c s ( 客户机月匿务器) 模式的异地型 网络数据库。c s 模式属二级结构模式,应用系统被分成的端( 客户机) 和后端 ( 服务器) 两个部分。在客户端集中了大量应用软件,应用的处理由客户机端完 成:数据集中在服务器上,数据访问和事务管理由服务器端完成。在服务器上 始终存在个活动的数据库服务进程,当客户端向服务器提出数据请求时,由 2 第1 章绪论 服务器上活动的数据库服务进程对该数据请求进行处理,仅把查询结果通过网 络返回给客户,减轻了网络负载,提高了网络系统的工作效率。c s 模式的优 点是:由于所有对数据库的查询操作都由充当数据库服务器的计算机来完成,所 以一个单位可集中财力购买高档服务器,使每个用户都能共享高档服务器迅速 查询数掘库的好处。再者,服务器上活动的数据库服务进程能够很好地保证数 据的一致性。 目前,大部分的电力系统分析软件都是基于c s 模式的。 3 由c s 模式转换成b s 模式j i l l 。 1 3 】 b s ( 浏览器n 务器) 模式是一种伴随着i n t e r n e t 发展起来的现代模式。它 采用三级或多级的体系结构,网络间的通信采用t c p i p 协议。应用系统和数据 完全集中存放在w e b 服务器端,客户端只需具有浏览器和知道w e b 服务器的 域名就可以了。 客户机 求i 惭 + 应用服务器 c s 模式( 两层) 浏览器 r p f 迈 浆 i h 1 w e b 服务器 b s 模式 l 图1 1c s 模式与b s 模式的结构图 f i g 1 1f r a m e o f c s m o d ea n d b s m o d e 由表卜1 可以看出b s 模式同c s 模式相比有许多的优点,尤其是软件维 护变得更加容易,这些优点使得基于b s 模式的应用软件得到了广泛的重视, f 逐步取代传统的c s 模式的软件,成为软件丌发的主流。 目前,国外正对基于w e b 的电力系统分析软件丌展积极的研究。 瑞士联邦技术院( e t h ) 的c h r i s t i a n s c h a f f n e r 丌发了基于b s 模式的电力 系统可视化教育软件,f l o w d e m o n e t “】【1 5 1 。这个软件在用户侧采用j a v a 小程 3 第l 章绪论 序( j a v a a p p l e t ) 建立系统模型和接受用户输入,服务器端以m a t l a b 作为计算 引擎,计算结果返回用户侧后以图形和数字两种方式同时显示。 表1 - 1c s 模式同b s 模式的比较 t a b l e1 一it h ec o n t r a s tb e t w e e nc sm o d ea n db sm o d e c s 模式b s 模式 硬件环境 需要专_ l 网络,局域网之间通过专门 建立在广域网之上,不必有专门的网 服务器提供连接和数据交换服务络硬件环境,只需要有操作系统和浏 览器就可以,适应范网强 安全要求面向相对定的用户群,对信息安全面向不_ 廿j 知的i l 户群,对安全的控制 的控制能力强能力相对弱 软件霞用需要考虑整体性,构件的重用性不高构件相对独立,能够较好的鼋用 程序架构a j 以更加注重流程对权限多层次校需要更多的考虑安全和访问速度 验和运行速度可以较少考虑 软件维护每个客户端都需要安装应用软件,一客p 端不需要安装融眦软传,版本的 旦版本升级或程序改动所有客户端升级和维护均在服务器端完成 都要随之改动,耗费大量人力、物力 操作系统客户机的操作系统应该相同与操作系统平台关系很小,客户端町 以对不同的浏览器实现兼容 美国p s e r c ( p o w e rs y s t e m se n g i n e e r i n gr e s e a r c hc e n t e r ) 机构的电力市场 研究项目组开发了名为p o w e r w e b 的网络系统,用于对各种电力市场的设计方 案进行仿真研究和教学。该系统通过p e r l 、m a t l a b 、j a v a 、j a v a s c r i p t 、s q l 和 h t m l 语言的混合编程实现;其w e b 服务器采用的是a p a c h e ,以m y s q l 系统 作为数据库服务器,计算服务器采用了m a t l a b 语言编写的o p f 软件包 m a t p o w e r 。在p o w e r w e b 中实现了对电力系统图形化的w e b 仿真。 a b b 的r i c h a r de b r o w n 开发了基于w e b 的分布式系统规划软件包 i p a d ,用j a v a 实现g u i l l ”。 新加坡南洋大学的b i nq i u 等不仅开发了一套基于w e b 的潮流仿真系统一 一w p f s 【1 9 l ,还实现了s c a d a 系统的实时w e b 显示。【2 2 】。 国内的电力系统分析软件多为单机版或c s 模式【2 5 1 。【2 9 】。 4 第1 章绪论 中国电力科学研究院于1 9 7 3 年就开始开发的电力系统综合分析软件 ( p s a s p ) 先后经历了机器指令版、大中型机f o r t r a n 语苦版、d o s 版、 w i n d o w s 版等几次升级,目前电力系统分析综合程序功能十分丰富,广泛应用 于电力系统规划设计、生产运行和科学研究等方面。 台湾的r o n g c e n gl e o u 等人利用a s p 、h t m l 和a c t i v e x 技术丌发了基于 w e b 的电能质量监控系统和负荷潮流仿真系统,但都不是图形化的2 3 1 1 2 钔。 北方交通大学开发了电力系统c a i ( 计算机辅助教学) 软件包p s a t s p , 具有电力系统潮流、稳定、短路电流的计算和演示功能,已经应用到了实际教 学中 3 0 】。 清华大学丌发了基于c o r b a 多代理机制的新型e m s 图形w e b 发布系统 3 1 1o 这 套系统采用图形对象代理将图像以g i f 格式编码,然后发送给客户端,实现了e m s 实时图形发布。郝晓弘等开发了基于b s 模式的变电站远程监控系统,把电力设 备的模型事先做成b m p 或i p g 文件,然后采用前景图与背景图叠加的方法实时显示 变电站中各丌关的变化,但不具备用户端画图和计算功能【3 引。 1 3 本课题的研究内容 近年来,i n t e m e t ( 因特网) 技术取得了很大的进步,它在不断地改变着我 们的工作、学习和生活环境。w e b ( 万维网) 的出现更是极大地推动了i n t e m e t 的发展,它以超文本的形式组织网络多媒体信息,提供生动直观、易于使用、 统一的图形用户界面,具有交互性、动态性和多平台性。w e b 服务的影响力已 经远远超出了专业技术范畴,广泛进入广告、电子商务、信息服务等领域 2 3 1 1 3 3 i t 3 4 1 。 i n t e r n e t 的进步促进了软件模式的变化,微软所提出的“软件即服务”的思 想已经深入人心。未来软件公司不再出售软件,所有的软件将以一种服务的形 式提供给用户。如果能够把单机版、图形化的电力系统分析软件作为一种服务, 移植到i n t e r n e t 环境中,那么用户就不必花费大量的经费购买整套分析软件,仅 在需要使用的时候通过i n t e m e t 获取服务即可,省去了繁杂的软件安装、升级和 维护。 本课题旨在利用w e b 技术丌发在用户侧“零”安装、免维护、图形化的电 力系统分析软件。课题的研究内容有: 5 第1 章绪论 ( 1 ) 构建b s 模型。 ( 2 ) 丌发图形用户界面( 0 u i ) ,能够实现动态的交互式绘图。 ( 3 ) 利用m a t l a b 实现服务器端的电力系统分析计算。 6 第2 章软件体系的午句建方案 第2 章软件体系的构建方案 2 ,1 概述 本软件的有两个主要功能,其一是用户可以在w e b 测览器上进行电力系统 单线图的绘制,其二是能够利用单线图生成的数据进行电力系统计算。对于后 者我们可以利用m a t l a bw e bs e r v e r 工具箱在w e b 环境下调用m a t l a b 完成 计算;对于前者要在w e b 测览器上实现一个可以交互式绘图的g u i ( g r a p h i c u s e ri n t e r f a c e ) ,仅仅利用h t m l ( h y p e r t e x tm a r k u pl a n g u a g e ,超文本标记语言) 、 d h t m l ( d y n a m i ch t m l ,动态h t m l ) 是无法实现的。这两种语言都是标记性 语言,只有d h t m l 提供了简单的鼠标捕获,但这些鼠标事件对于完成一个复 杂的绘图工作远远不够【3 5 1 。因此,必须另辟蹊径。 根据现有的计算机技术,构建本软件体系至少有三种方案:利用 a s p n e t 利用j a v aa p p l e t 开发n e t 组件。这三种方案的功效、丌发难度互 有差异,下面将分别对各个方案作一下分析。 2 2 利用a s p n e t 实现 a c t i v es e r v e r p a g e s ( a s p ) 是微软公司开发的服务器端脚本编写环境,可以 将h t m l 标记、脚本命令和a c t i v e x 组件等多种元素组合一起,创建交互的网 页和基于w e b 的应用程序。 a s p n e t 是a s p 的新一代版本,是n e tf r a m e w o r k 的部分。a s e n e t 是一个创建企业级w e b 应用程序的开发平台,并与m i c r o s o f t 公司的新一代开发 系统v i s u a ls t u d i o n e t 集成在一起。与早期的a s p 相比,a s r n e t 把w e b 页 面上的所有控件作为对象来访问,能够将代码与h t m l 页面分离,提供了一种 新的编程模型和结构,可生成更安全、可伴缩和稳定的应用程序。与更高级的 编程语言相比,a s p n e t 提供了完整的服务器端对象模型,可以在运行期间使 用,它还可以根据需要访问服务器端的其它n e t 类,与许多有用的服务集成起 束。 a s r n e t 使用h a t e r n e ti n f o 舯a t i o ns e r v e r ( i i s ) 来传送内容,以响应h t t p 7 第2 章软件体系的构建方案 请求。在通过h t t p 请求建立文档时,它可以在w e b 服务器上动态创建文档。 a s e n e t 页面以a s p x 文件的格式存储,其基本结构如图2 1 所示。 i i s5w e b 服务器 a s p x 资源中的 后端数据库 , a s p x 资源的 a s p x 资源的a s p i n e t 页面 操作系统 n e tf r a m e w o r k 其它资源 图2 - 1a s p n e t 的基本结构图 f i g 2 - 1 t h ef r a m eo f a s e n e t 在a s e n e t 处理过程中,可以访问所有的n e t 类、c # 或其他语言创建的 定制组件、数据库等。a s e n e t 文件可以包含以下内容: 服务器的处理指令 c # 、v b n e t 、j s c 邱t n e t 代码或n e tf r a m e w o r k 目前或将来支持的 其它语言的代码 窑体中对应于资源的内容,例如h t m l 内嵌的a s e n e t 服务器控件 a s e n e t 之所以具备动态绘图功能,原因就是n e t 框架中集成了g d i + 。 g d i + 的所有功能都包含在s y s t e m d r a w i n g 及其子命名空间中。g r a p h i c s 类是 g d i + 的核心功能,可以用来绘制直线、曲线、图形、图像和文本。 采用a s e n e t 绘图的基本方法是构造一个b i t m a p ( 位图) 对象,由此获得创 建图形的环境,即g r a p h i c s 对象:然后,利用s y s t e m d r a w i n g 空删中提供的类 与方法绘出图形;最后,利用b i t m a p 对象的s a v e 方法将其保存在磁盘或者发送 到客户端的浏览器中,特别是通过r e s p o n s e o u t p u t s t r e a m 属性揭示n e t 的输出 8 囝 一毋扩口岑一声暴一( 第2 章软件体系的构建方案 流,可咀将图形直接发送到客户端的浏览器【3 6 】。图2 2 是微软公司网站提供的一 个a s e n e t 绘图的示例程序。在这个示例中,用户输入坐标后,选择希望加入 的图形类别,采用的绘图方式( 绘制或填充) ,服务器根据这些信息生成新的图 像文件并发送给浏览器,用户就可以看到新的画面了。但是,该程序并不能任 意移动、复制或擦除其中的某个对象。 【室 2 - 2 使用a s p n e t 绘图示例 f i g 2 2p a i n t i n gd e m ow i t ha s e n e t 要在页面中能够使用绘图功能,必须在页面一开始就引入封装了绘图功能 的命名空间,比较常见的有: 引入绘制g d i + 图形的基本功 能 引入了绘制g d i + 图形 的高级功能 9 第z 章软件体系的构建方案 引入绘制高级二 维、矢量图形的功能 v o i dp a g e _ l o a d ( o b j e c ts r c ,e v e n t a r g se ) b t i m a pb = n e wb i t m a p ( 3 0 0 ,4 0 0 ) ;定义一个3 0 0 + 4 0 0 象素的位图对象 g r a p h i c sg = g r a p h i c s f r o m l m a g e ( b ) ;在以上位图对象的基础上建立新图像 晷c l e a r ( c o l o r w h i t e ) ;在图形上绘制白色背景 g d r a w r e c t a n g l e ( p e n s b l a c k ,p o i n t l ,p o i n t 2 ) 绘制矩形 b ,s a v e ( r e s p o n s e o u t p u t s t r e a m , i m a g e f o r m a t o i o ;通过 r e s p o n s e o u t p u t s t r e a m 将图像发送到浏览器 b d i s p o s e ( ) ; g d i s p o s e ( ) ;释放资源 ) 2 3 利用j a v aa p p i e t 实现 j a v a 问世于2 0 世纪9 0 年代初期的s u nm i c r o s y s t e m s 公司,它功能强大, 是继c 和c + + 之后的现代化程序设计语言。1 9 9 4 年下半年开始,i n t e m e t 迅猛 的发展起来,s u n 公司适时地将j a v a 进行了改造,成为万维网塑造的第一种主 要编程语言。j a v a 已经成为目前i n t e m e t 上最受欢迎的开发语言,得到了i b m 、 n e t s c a p e 、m a t l a b 和m i c r o s o r 等著名公司的支持。 j a v a 语言具有以下特点: ( 1 ) 面向对象。j a v a 拥有丰富的类库资源,使得应用程序具有良好的复用性、 可扩充性。 ( 2 ) 跨平台,可移植性好:j a v a 源代码经过编译生成字节码( b y t e c o d e ) ,由 j a v a 虚拟机( j v m ) 负责解释成具体的机器码后执行,而不是绑定到特定 类型的机器和操作系统中。因此,j a v a 程序能够在多种不同体系的系统 上运行,大大减少了软件的维护和升级费用。 ( 3 ) 分布式:j a v a 的涎生与网络紧密相关,其设计体系就以i n t e m e t 的分布 1 0 第2 章软件体系的构建方案 式环境为基础,j a v a 程序能够在大多数的w e b 浏览器中运行。 ( 4 ) 安全性好:j a v a 的代码安全检查机制可以有效防止非法代码和病毒的侵 入,阻止对内存的越权访问。 ( 5 ) 多线程:j a v a 支持多线程功能,允许用户程序并行执行,并提供了同步 机制以保证各个线程对共享数据的正确操作。在硬件许可的条件下,线 程可以直接分布到各个c p u 上,充分发挥硬件性能。 f 6 ) 动态性:j a v a 执行代码是在运行时动态载入的,新的代码模块可以在需 要时从不同的来源载入,甚至是通过网络,由此实现版本自动升级。 从1 _ 2 版开始,j a v a 引入了二维图形的应用程序接口和相应类库,提供了统 一的绘图模型,基本几何图元、复杂几何对象的绘制方法,鼠标是否选中特定 对象的判断机制,加强了颜色管理,并能够打印复杂的文档。g r a p h i c s 2 d 是j a v a 中的图形环境,它提供了一系列与具体设备无关的方法,封装了颜色、字体、 线形、绘图方式、绘图对象等绘图的必要信息,方便程序员使用。 更为重要的是,j a v a 语言生成的小程序j a v aa p p l e t 可内嵌到h t m l 文档 中,并从服务器下载,由客户端w e b b r o w s e r 中j a v a 虚拟机( j a v av m ) 装入 执行。j a v a a p p l e t 可以获得a p p l e t 的图形环境,利用g r a p h i c s 2 d 中的各种方法 和对象在浏览器中实现复杂的图形操作。j a v a 与网络之间存在着的“天然”关 系使得在浏览器中进行绘图操作成为可能,同时比较方便实现。 采用j a v a a p p l e t 实现w e b 浏览器绘图的总体框架如图2 3 所示 1 4 。客户端 的w e b 浏览器( 如i e ) 向服务器发出一个h t t p 请求,服务器返回一个内嵌j a v a a p p l e t 的h t m l 文本。w e b 浏览器解释执行h t m l 文件,同时下载并运行其中 指明的a p p l e t 程序( 图3 中的) 。在用户端的浏览器中可以看到一个类似 a u t o c a d 的图形用户界面。a p p l e t 同w e b 服务器之间进行网络连接( ) ,它 为客户机的每一次请求都建立一个线程( ) ,这个线程会启动m a t l a b 。单线图 绘制完成后,如果用户需要计算,系统将启动一个新的线程( ) 。该线程根据单 线图的连接情况和各元件的电气参数自动生成一个数据文件,然后上传到服务 器。a p p l e t 获得从w e b 服务器返回的数据文件成功上传的确认信息后,就会启 动一个线程调用m a t l a b _ 丌始计算。计算结束后,m a t l a bw e bs e r v e r 返回相应 信息和存放计算结果的文件路径( ) 。a p p l e t 将根据以上信息,发出相应的h t t p 请求,将结果文件取回至本地计算机,并在用户界面上以图形化的方式显示出 来爬m 第2 章软1 ,| :体系的构建方案 图2 - 3j a v aa p p l e t 的工作原理图 f i g 2 - 3 t h ew o r k i n gp r i n c i p l ed i a g r a mo fj a v aa p p l e t 2 4 采用n e t 组件实现 2 4 1 组件的概念 最初软件开发人员在丌发应用软件的时候,为了追求软件的高效性非常注 重软件的编程技巧。由于不同的程序员拥有着不同的经验和编程策略,因此所 丌发出的程序缺乏统一的规范。当他们重新开发另外一个系统时,不得不一切 重头丌始,既增加了程序的开发周期,又造成了资源的浪费。因此软件重用成 为了软件丌发人员追求的目标。人们希望可以快速、自由地“装配”应用程序, 就像搭建积木一样。组件就是一种提供可重用性的技术方案。 组件这个术语指任何可复用的对象或任何可与其它对象交互的代码体。其 含义主要包括以下几方面: ( 1 ) 组件是个分布式对象。 ( 2 ) 组件是可重用的二进制代码,独立于语言,与源代码无关。 ( 3 ) 组件是完成特定功能的软件模块。 2 第2 章软件体系的构建方案 ( 4 ) 组件不是一个完整的应用。组件是粗粒度的,且集成度越来越高,但无 论其规模如何,只是整个应用的组成部分,需要在应用环境中获取各种 数据爿能正常运行。 2 4 2 几种常见的组件技术1 3 ” 自组件革命丌始以来,已经引入了许多新的组件技术,主要有简单控件、 v b x 、a c t i v e x 、c o m d c o m 、j a v a b e a r t s 、d e l p h i 组件、n e t 组件、c o b r a 等。每种技术都有其独特的特性。 ( 1 ) 简单控件 简单控件是第一种可插入对话框的组件。这些简单控件包括按钮、文本框 等标准控件,它们今天仍然得到广泛的应用。尽管它们的基本实现技术远没有 最近的技术那么复杂,但它们确实是组件,因为简单控件是独立程序,它们以 预定义的方式与环境进行交互。简单控件拥有自己的窗口,而且该窗口必须嵌 入另一个称为父窗口的窗口中。最常用的通信方法是在控件与父窗口之间传递 消息。 ( 2 ) v b x ( v i s u a lb a s i ce x t e n s i o n ) v b x 是一种为v i s u a lb a s i c 编程语言的早期版本添加新特性的机制。为了创 建这种扩展,需要创建一个具有某些标准接口函数的运行函数库。这些函数库 存储在以“v b x ”为扩展名的文件中,因而有了v b x 这个名字。v b x 技术建立在 简单控件所用的消息传递机制之上。v b x 技术支持属性、事件和方法( 在某种程 度上) ,而且主要是使用消息传递机制来实现它们。容器读取属性值的一种方法 是向组件发送请求该属性值的消息,并提供该值的存储地址。容器也能够在不 通知组件的情况下直接读取属性值。尽管v b x 支持方法,但它们必须从一个预 定义的方法名列表中进行选取,该列表包括r e s e t 、c l e a r 、a d d i t e m 等方法。这些 方法的参数列表也是预定义的。方法的调用通过传递给组件的特殊消息柬实现, 并将方法的操作数编码作为消息的操作数。 ( 3 ) a c t i v e x 在目前j 下在使用的组件技术中,a c t i v e x 技术是接受范围最广的技术。 a c t i v e x 控件是通过组件对象模型( c o m ,c o m p o n e n to b j e c tm o d e l ) 提供了某 些功能性的动态链接库( d l l s ,d y n a m i c l i n kl i b r a r i e s ) 。a c t i v e x 控件同简单控 件存在着一些相似之处:它们都提供了图形接口,例如按钮和文本框,通过这 3 第2 章软件体系的构建方案 些接口,用户和控件之问可以交互作用;它们可以拥有许多方法、属性和集合, 可以激发事件。使用a c t i v e x 控件能够在w 曲网页上做任何与w i n d o w s 应用程 序相同的工作。 在w e b 页中插入a c t i v e x 控件,需要使用h t m l 的 吲o b j e c t 标记对p 3 1 。插入到w e b 页面中的 通常具有以下的内容: 其中的i d 是a c t i v e x 控件在w e b 页面中的名字;c l a s s i d 是个1 2 8 位 的全局唯一标识符,它出特殊算法生成,在时间和空间上是独一无二的,能够 唯一地标识某个控件。c o d e b a s e 属性则告诉浏览器从什么地方可以获得指定 版本的控件。 当i e 在w 曲页面中找到 标记后,就读取c l a s s i d 的属性值, 首先在本机的注册表中查找c l a s s i d 以判断本机上是否已经安装了相应的控 件。如果没有,浏览器将从c o d e b a s e 指定的地点下载并安装控件。如果操作 系统已安装过该控件,浏览器会将本机控件的版本与c o d e b a s e 中指定的版本 相比较,如果后者的版本更高,则下载并安装新的控件。这一过程被称为i n t e m e t c o m p o n e n td o w n l o a d 。 ( 4 ) c o m d c o m c o m 是建立a c t i v e x 控件的基础这意味着在定义上,每个a c t i v e x 控 件都是一个c o m 组件。然而,c o m 组件允许使用定制接口以支持组件与宿主 之阳j 的通信。其中最简单的是i u n k n o w n 接口,而且所有c o m 组件都必需实现 该接口。 c o m 与a c t i v e x 的主要区别是,c o m 允许使用i d i s p a t c h 接口以外的接口。 原则上,卣接使用c o m 接口比使用i d i s p a t c h 接口作为媒介更加有效。然而 许多1 具只能使用i d i s p a t c h 接口。 j ia c t i v e x 控件另一个1 ;同是,c o m 对象可以运行在独立于容器的地址空 川r l t 。具备d c o m 扩展后,c o m 甚至可以运行在宿主机以外的其他机器上。 这利一组件的生存期独立f 宿主机的生存期,并且浚组件的一个实例可以同时为 ;干个宿主机提供服务。在通常情况下a c t i v e x 控件在客户程序启动时激活,在 4 第2 章软仆体系的构建方案 客户程序终止时终止。c o m 和d c o m ( d i s t r i b u t e dc o m ) 组件则可以进行动态 激活和终止。 2 4 3 n e t 组件 n e t 组件是最新的组件技术。微软是这样给n e t 组件定义的:n e t 组件 是指在n e tf r a m e w o r k 中实现s y s t e m c o m p o n e n t m o d e l i c o m p o n e n t 接口的 一个类,或者从实现i c o m p o n e n t 的类中直接或间接派生的类。n e t 组件实际 上就是v i s u a ls t u d i o n e t ( v s n e t ) 所提供的w i n d o w s 窗体组件( w i n d o w sf o r m s c o m p o n e n t ) 。要创建w i n d o w s 窗体组件,需要从标准类 s y s t e m w i n d o w s f o r m s u s e r c o n t r o l 导出一个新类。 a s p n e tw i n d o w sf o r m s 圈困 固团 a s p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工年度安全培训
- 新员工培训计划
- 爱国主义教育融入中学生物学教学的应用研究
- 幼儿园大班体育教案《战胜灰太狼》
- 培训设备检修安全知识课件
- 培训规划师知识点课件
- 2025年医院康复科医护人员综合能力聘用合同
- 2025医疗物资跨境电商平台年度运营与推广服务合同
- 2025年绿色农业园区环境监测与治理服务合同
- 2025年青春成长主题剧剧本制作服务合同范本
- 急诊科护理月质量分析
- 危险废弃物及固体废物管理培训
- 寿险财务流程管理办法
- 《老年人生活能力康复训练》养老服务与管理专业全套教学课件
- 徒手整形培训课件
- 运动康复概论讲课件
- 乡镇密码电报管理制度
- 村级络监控安装方案(3篇)
- 潜水员入场安全教育试卷(含答案)
- 供热有限公司安全风险辨识和隐患排查治理双重预防模板
- 癌性爆发痛的护理2
评论
0/150
提交评论