(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf_第1页
(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf_第2页
(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf_第3页
(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf_第4页
(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(环境科学专业论文)基于comgis的区域污染源管理信息系统的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

四川人学硕卜学位论文 r e s e a r c ho i lr e g i o nm i sf o rp o l l u t i o ns o u r c e b a s e do nc o m g i s e n v i r o n m e n t a is c i e n c e p o s t g r a d u a t ey a n gk a n g n i a n t u t o rl u ow e n f e n g a sa s p e c i a l f i e l do fi n f o r m a t i o nt e c h n o l o g i e s ( i t ) ,g e o g r a p h i c a l i n f o r m a t i o ns y s t e m ( g i s ) p l a y sam o r ea n dm o r ei m p o r t a n tr o l ei nt h e i n f o r m a t i o ns o c i e t y ,w h i l ec o m p o n e n ts o f t w a r et e c h n o l o g yi san e wk i n do f s o f t w a r ee n g i n e e r i n gt e c h n o l o g yt h a td e v e l o p e da f t e ra n da sa ne x t e n s i o no f t h eo b j e c to r i e n t e dt e c h n o l o g y ,a n di th a sa l r e a d yb e c o m eo n eo ft h e m a i n s t r e a m si nt h ed e v e l o p m e n to fs o f t w a r et e c h n o l o g i e st o d a y c o m p o n e n tg i si s ak i n do fa p p l i c a t i o no fo b j e c to r i e n t e dt e c h n o l o g y a n dc o m p o n e n ts o f t w a r et e c h n o l o g yi ng i ss o f t w a r ed e v e l o p m e n t i th a s m a n ya d v a n t a g e st h a tt h et r a d i t i o n a lg i sl a c k s ,t h e r e f o r e ,i tp r o v i d e st o t a l l y n e wi d e aa n dm e t h o dt os o l v et h ep r o b l e m st h et r a d i t i o n a lg i sf a c e s c o m g i ss y s t e mw i l lb et h ei m p o r t a n td i r e c t i o ni nt h ed e v e l o p m e n to fg i si n f u r t u r e c o m g i sd o e sn o td e p e n do nt h es p e c i f i cp r o g r a ml a n g u a g e ,i nw h i c h t h ef u n c t i o no fg i si sc o m p l e t e db yt h eg i s o c xa n dt h es p e c i a lf u n c t i o nc a n b ea c c o m p l i s h e db yd e v e l o p i n go no re m b e d d i n gs p e c i a lo c xi ng e n e r a l v i s u a ld e v e l o p m e n te n v i r o n m e n t ( s u c ha sv b ,v ca n dp b ) i nt h i sp a p e r , t h ed e v e l o p m e n to fg e o g r a p h i c a li n f o r m a t i o ns y s t e ma n d t h ec u r r e n tr e s e a r c hh o tt o p i c sw e r er e v i e w e d ,t h ep r i n c i p l e so fc o m p o n e n t t e c h n o l o g ya n di t sf e a t u r e s ,t h es t r u c t u r eo ft h ec o m p o n e n tg i s a sw e l la si t e x p a t i a t e so nt h es o f t w a r et e c h n o l o g i e sc o n c e r n i n gc o m p o n e n t s b a s e d d e v e l o p m e n tw h i c h i n c l u d e c o m p o n e n to b j e c tm o d e l ( c o m ) ,d i s t r i b u t e c o m p o n e n to b i e c tm o d e l ( d c o m ) ,o b j e c tl i n k i n ga n de m b e d d i n g ( o l e ) a n d 四川人学硎士学位论文 a c t i v e x m o r e o v e r ,t h ep a p e ri n t r o d u c e sc o r r e l a t i v ec o n t e n ta b o u tc o m g i s , i n c l u d i n gt h ec h a r a c t e r i s t i c a n df r a m e w o r ko fc o m g i s ,p r o g r a m m i n ga n d d e v e l o p m e n ta b o u tc o m g i s a n dac o m g i s s o f t w a r et 0 0 1 m a p o b j e c t sf r o m e s r i ,l si n t r o d u c e di nd e t a i l f i n a l l yt h ea r e am a n a g e m e n ti n f o r m a t i o ns y s t e mf o rp o l l u t i o ns o u r c ei s i n t r o d u c e di nt h i sp a p e r ,w h i c hi n t e g r a t e sm a p o b j e c t sw i t hv i s u a lb a s i c t h e c o n t e n ti n c l u d e st h ed e s i g no fo b j e c t s y s t e md e s i g n ,f u n c t i o na n dd a t a b a s e , p r o g r a m m i n ga n da p p l i c a t i o ni nt h em a n a g e m e n to fp o l l u t i o ns o u r c e k e yw o r d s :g e o g r a p h i c a li n f o r m a t i o ns y s t e m ,c o m g i s ,m a p o b j e c t s ,t h e a r e am a n a g e m e n ti n f o r m a t i o ns y s t e mf o rp o l l u t i o ns o u r c e i l l p q 川人学硕上学位论文 刖舌 地理信息系统是在计算机软硬件支持下,以空间数据库为基础,以具有地 理位置属性的空间数据为研究对象,埘空问相关数据进行采集、管理、操作、 分析、模拟和演示,实时提供多种空间和动态的地理信息,为地理研究和地理 决策服务而建立起来的计算机技术系统。进入9 0 年代以来,伴随着计算机技术 和信息技术的发展,社会对地理信息系统的认议和需求都有很大提高,地理信 息系统的应用范围不断扩大,层次逐渐加深,已经广泛地应用在政府决策、资 源管理、城市规划、军事情报、环境保护、灾害防治、邮电通讯、交通运输、 商业金融等领域,都取得了显著的成效。 由于环境问题带有鲜明的时空特性,如何将现代信息管理技术特别是g i s 技术运用在环境保护领域是广大环境工作者和决策人员关注的一个的问题。随 着地理信息系统应用领域的扩展,应用型g i s 的开发工作日显重要。如何针对 不同的应用目标和行业的不同特点,高效地开发出既适合该行业需要又具有方 便美观丰富的界面形式的地理信息系统,是g i s 开发中最活跃的领域之一。 污染源管理是环境管理业务的基础工作,实现环境污染源信息管理和分析 统计的可视化是城市环境管理与环境决策信息化走向纵深发展的重要标志。区 域性的环境污染源的许多数据具有地理特征,客观上要求数据的处理和操作采 用时空处理的手段,而g i s 技术的发展适应了这样的需要,为环境管理( 包括 污染源管理) 和规划提供了从简单的污染源查询、污染现状制图,到区域环境 综合整治和环境建摸、空间分析与决策支持等广阔的应用前景。g i s 强大的 空间数据管理和分析功能,是政府部门制定环境保护政策及环境应用的关键技 术,为保护环境和进行有效、合理的规划和评价提供了丰富的科学的信息管理 分析和决策手段。研究g i s 在污染源环境管理信息系统中的应用有利于我国的 环境信息化进程,进而有利于我国的环境保护工作。 该系统将c o m g i s 技术与污染源环境管理业务相结合,利用先进的组件思 想和技术来实现对污染源的环境管理,它既拓展了g i s 的应用领域,又提高了 现有环境管理技术的水平和层次,符合目前环境管理信息化的趋势。对区域污 染源可以进行各种查询、更新、地图显示、数据管理与分析、统计等常规管理 业务,方便当地环保部门开展业务。 四川大学顶十学位论文 本文共分五章,具体安排如下: 第一章为g i s 概述,简要介绍了g i s 的概念、发展历程、发展趋势与应用 领域。 第二章主要阐述组件式软件技术的概念与原理,组件式对象模型( c o m ) 、 分布式组件对象模型( d c o m ) 、o l e 及自动化技术、o c x 与a c t i v e x 控件。 第三章介绍了组件式g i s 技术,主要包括组件式g i s 技术的发展、特点与 结构,重点介绍了e s r i 公司的组件式g i s 工具软件m a p o b j e c t s 。 第四章介绍了区域污染源管理信息系统的建设意义、设计目标、开发思想、 系统设计、数据库建设、程序设计以及在污染源管理方面的应用。 第五章为结束语。 四川大学颧七学位论文 1 g i s 概述 1 1g i s 概念 地理信息系统( g e o g r a p h i c a li n f o r m a t i o ns y s t e m ,g i s ) 是一种决策支持系 统,它具有信息系统的各种特点。地理信息系统与其他信息系统的丰要区别在 于其存储和处理的信息是经过地理编码的,地理位置及与该位置有关的地物属 性信息成为信息检索的重要部分。在地理信息系统中,现实世界被表达成一系 列的地理要素和地理现象,这些地理特征至少由空间位置参考信息和非位置信 息两个组成部分。 地理信息系统的定义是由两个部分组成的。一方面,地理信息系统是一门 学科,是描述、存储、分析和输出空间信息的理论和方法的一门新兴的交叉学 科;另一方面,地理信息系统是一个技术系统,是以地理空间数据库( g e o s p a t i a l d a t a b a s e ) 为基础,采用地理模型分析方法,适时提供多种空间的和动态的地 理信息,为地理研究和地理决策服务的计算机技术系统。 地理信息系统是在计算机软硬件支持下,以空间数据库为基础,阻具有地 理位置属性的空间数据为研究对象,对空间相关数据进行采集、管理、操作、 分析、模拟和演示,实时提供多种空间和动态的地理信息,为地理研究和地理 决策服务而建立起来的计算机技术系统。口】i 3 】 1 2g i s 的历史发展 1 9 6 3 年加拿大政府组织为处理加拿大土地调查获得的大量数据,开始研制 关于城市和土地利用的加拿大地理信息系统( c g i s ) 。该系统于1 9 7 1 年投入正 式运行,被认为是国际上最早建立的、较为完善的大型使用的地理信息系统。 进入七十年代以后,由于计算机硬件和软件技术的飞速发展,尤其是大容 量存取设备硬盘的使用,为空间数据的录入、存储、检索和输出提供了强 有力的手段。此外,遥感数据开始为地理信息系统所重视。 八十年代后,地理信息系统技术逐渐融入多种学科领域,并得到广泛应用。 在地理信息系统理论指导下研制的地理信息系统工具具有高效率和更强的独立 性和通用性。从比较简单的、单一功能的、分散的系统发展到多功能的、共享 四川人学碗i 学位论文 的综合性信息系统,并向智能化发展,新型的地理信息系统逐渐开始运用专家 系统知识,进行分析、预报和决策。 进入九十年代,随着地理信息产业的建立和数字化信息产品在全世界的普 及,地理信息系统深入到各行各业乃至各家各户,成为人们生产、生活、学习 和工作中不可缺少的工具和助手。目前,在世界发达国家地理信息系统已成为 许多机构必备的t 作系统,尤其是政府决策部门在一定程度上由于受地理信息 系统影响而改变了现有机构的运行方式、设置与工作计划等。而且,社会对地 理信息系统认识普遍提高,需求大幅度增加,从而导致地理信息系统应用的扩 大与深化。国家级乃至全球性的地理信息系统已成为公众关注的问题【4 】。 我国地理信息系统方面的工作自八十年代初开始。以1 9 8 0 年中国科学院遥 感应用研究所成立的全国第一个地理信息系统研究室为标志,在几年的起步发 展阶段中,我国地理信息系统在理论探索、硬件配制、软件研制、规范制定、 局部系统建立、初步应用实验和技术队伍培养等方面都取得了进步,积累了经 验,为全国范围内开展地理信息系统的研制和应用奠定了基础。白九十年代起, 中国地理信息系统步入快速发展阶段。力图使地理信息系统从初步发展时期的 实验、局部应用走向实用化和生产化,为国民经济重大问题提供分析和决策依 据。同时地理信息系统的研究和应用正逐步形成行业,具备了走向产业化的条 件。 1 3g i s 的发展与应用 目前,世界各国有关g i s 技术和应用的研究方兴未艾。 从应用领域来讲,在国外,g i s 广泛地应用在环境管理、交通运输、精准 农业、环境评价与预测、能源管理、生态规划、医疗保健、各种管线铺设、灾 害预测与处置、犯罪分析、消费者分析等各个领域和行业【5 h 。在我国,由于 起步稍晚,技术力量相对较弱,g i s 的应用以及g i s 软件的开发相对落后,但 是发展势头迅猛,g i s 的应用从科研部门和测绘及资源环境等领域,已经扩展 到土地管理、设施管理、军事、管网设计、公安消防、金融商业、市场调查、 移动通讯、民用工程、管道管理、在线政府公共信息服务等领域。 从技术发展的角度来讲,g i sj f 向着数据标准化( i n t e r o p e r a b l eg i s ) 、平 四川人学坝l j 学位论文 台网络化( w e b g i s ) 、数据多维化( 3 d g i s ) 、系统集成化( c o m p o n e n t g i s ) 、 系统智能化( c y b e rg i s ) 和应用社会化( 数字城市、数字地球) 的方向发展m 】。 互操作地理信息系统( i n t e r o p e r a b l eg i s ) 是g i s 系统集成平台,它实现在异 构环境下多个地理信息系统及其应用系统之间的通信协作。 基于w w w 的地理信息系统( w e bg i s ) 是利用i n t e r n e t 技术在网络上发布空 间信息,供用户浏览使用成为g i s 社会化、大众化最有效途径。 面向对象和构件的地处信息系统( c o r ng i s ) 是把g i s 功能模块划分为多个 标推控件,完成不同功能,通过可视化工具集成起来,形成最终g i s 应用。 嵌入式地理信息系统( e n b e dg i s ) 将g i s 功能与嵌入式设备、嵌入式操作系 统相结合,创造更自由随意的g i s 应用模式。 三维地理信息系统( 3 dg i s ) 目前研究重点集中在三维数据结构的设计、优 化实现,立体可视化技术的运用、三维系统功能和模块设计等方面。 数字城市( d i g i t a lc i t y ) 是以3 s 、宽带网络、虚拟现实技术的综合应用为基 础,构造出协同工作利社会交流的新型空间。 数字地球( d i g i t a le a r t h ) 是对真实地球及其相关现象的统一性的数字化重现 和认识,其核心思想是用数字化手段统一处理地球问题和最大限度地利用信息 资源。数字地球是g i s 的延伸和升华,对人类生存发展具有重大作用,在当前 经济建设中已初现端倪。 g i s 技术的发展又必将推动g i s 应用领域的拓宽和加深。数字地球所提供 信息在工业、林业、水利、地矿、交通、通讯、新闻媒体、城市建设、教育、 资源、环境、人口、海洋以及军事等领域都能产生巨大社会经济效益,特别是 在象农作物监测估产、土地覆盖物的识别和评价、土地管理、水资源管理、环 境监测、资源合理利用、数字天气预报、灾害监测与评估、灾害模拟预报、智 能交通、商业选址、市场调查、移动通讯、民用工程、管道管理、政府公共信 息服务等方面产生的作用是不可估量的。 四川人学坝i 学似论史 2 组件技术 随着i t 业界新概念和新产品的层出小穷。“组件式软件技术以其代码可重 用,定制应用程序方便等特点,已经成为当今软件技术的潮流之。”+ 组件技 术的出现是近年来面向对象技术进入到成熟实用化阶段的具体表现。在组件技 术的概念模式下,一个软件系统可以被视为由若干个相互协同工作的对象集合 而成,其中每个对象都能提供特定的服务和功能,并且以标准、开放的形式公 布出来,以便和其他对象通信和被调用。 由于组件技术的出现,软件产业的形式也将会有所改变。大量组件生产商 会涌现出来,并推出各具特色的组件产品;软件集成商则利用适当的组件快速 生产出用户需要的某些应用系统;大而全的通用产品将逐步减少;很多相对较 为专业,但用途广泛的软件,如g i s 、语音识别系统等,都将以组件的形式组 装和扩散到一般的软件产品中。 为了适应这种技术潮流,g i s 软件像其他软件一样,发生了革命性的变化。 组件式g i s ( c o m p o n e n tg i s ,简称c o m g l s ) 等新兴技术应运而生,g i s 组件化 趋势日益明显,已经成为g i s 重要的发展方向之一。 2 1 组件式软件技术的概念和原理 组件式软件技术,是面向对象技术和分布式计算在软件工程中应用的深化 和融合。在软件领域,何谓组件( c o m p o n e n t ) ,如何标识组件的基本属性,目 前还没有定论。不同学者有不同理解,如,组件是软件的基本量子:组件是一 个可替换的、封装了设计决策的软件单元;组件是一个独立于语言的“即插即 用”的独立对象;组件是一种按特定工业标准开发的,经过严格检测并且可重 构的标准应用程序子集1 1 8 1 。1 9 9 6 年e c o o p ( e u r o p e a nc o n f e r e n c e o i l o b j e c t o r i e n t e dp r o g r a m m i n g ) 会议从技术和工程两方面对组件下了如下定 义:as o f t w a r ec o m p o n e n ti sau n i to fc o m p o s i t i o nw i t hc o n t r a c t u a l l ys p e c i f i e d i n t e r f a c e sa n de x p l i c i tc o n t e x td e p e n d e n c i e so n l yas o f t w a r ec o m p o n e n tc a nb e d e p l o y e di n d e p e n d e n t l ya n di ss u b j e c tt oc o m p o s i t i o nb yt h i r dp a r t i e s 比尔盖茨在中国微软专业开发者大会( p d o 上的讲话,1 9 9 7 年1 2 月 - - 6 一 硼川人学硕j j 学位论文 根据这些理解和解释,川以总结出组件的两个基本属性: 1 ) 组件可以在二进制级别上进行集成和重用,这保证了组件独立于7 t 发语 言,甚至操作系统。 2 ) 组件必须按照共同的标准被独立地生产、获得和配置。与环境和上下文 无关是组件封装性的体现。 概括地讲,组件( c o m p o n e n t ) 是指应用系统中可以明确辨识的、具有一定 功能的构成模块,其中可复用组件( r e u s a b l ec o m p o n e n t ) 贝r j 是指那些功能独立、 可复用的组件。随着对软件复用理解的深入,组件的概念已不再局限于源代码 组件,而是延伸到软件系统的需求规约、构架、文档、测试计划、测试案例和 数据以及其他对开发活动有用的信息。组件技术是支持软件复用的核心技术, 是近几年来迅速发展并受到高度重视的一个学科分支,其主要研究内容包括组 件获取、组件模型、组件描述语言、组件分类与检索、组装、标准化【j 9 1 。 为规范化功能各异的组件,实现组装目的,需对组件模型作以描述。组件 模型定义了组件的本质属性,规定了组件接口的结构以及组件与软件构架、组 件与组件之间的交互机制,通常还提供创建和实现组件的指导原则。 在众多的组件模型中,3 c 模型是学术界普遍认同的一个具有指导性作用的 组件模型。该模型从概念( c o n c e p t ) 、内容( c o n t e n t ) 和环境( c o n t e x t ) 三个不同 方面来描述组件【2 : ( 1 ) 概念:包括接口规约和语义描述; ( 2 ) 内容:概念的具体实现; ( 3 ) 环境:组件和外围环境在概念级和内容级的关系,为组件的选用和适应 性修改提供指导。 由组件的第二个基本属性,组件必须按照特定的标准( 即组件模型实现规 范) 进行开发、发布和使用,不同的软件工业标准形成了不同的组件体系。目 前,最流行的组件标准主要有以下三种: 微软制定的组件对象模型c o m ( c o m p o n e n to b j e c tm o d e l ) 、c o m + 及分布 式组件对象模型d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ) ; 四川大学硕i :学位论史 对象管理集团o m g 制定的流行于u n i x 的c o r b a ( c o m m o no b j e c t r e q u e s tb r o k e r a r c h i t e c t u r e 公共对象请求中介体系结构) ; s u n 发布的j a v a j a v ab e a n s 。 这三种模型分别适用于不同的环境,有各自的特点和长处。这些组件带有 标准的接口,使开发人员不必关心组件位于何处,是由哪个开发商设计的。1 2 1 1 但由于m i c r o s o f t 的w i n d o w s 操作系统完全支持c o m ,且w i n d o w s 操作系统 在桌面电脑操作系统市场占主导地位,所以c o m 已经成为业界事实上的标准, 因此,a c t i v e x 控件成为当今可视化程序设计中应用最广泛的标准组件之一。 新一代的组件式g i s 大都是a c t i v e x 控件或者其前身o l e 控件。本文主要介绍 c o m 及其相关技术。 目前组件发展的趋势主要包括两方面:( 1 ) 从集中式的小粒度组件向分布 式的大粒度组件发展;( 2 ) 从用于界面制作的窗口组件向完成逻辑功能的业务 组件发展【1 9 】。 2 2 组件对象模型( c o m ) 组件式对象模型( c o m p o n e n to b j e c tm o d e l ,简称c o m ) 是o l e ( o b j e c tl i n k i n g a n de m b e d d i n g ) 和a c t i v e x 共同的基础,是组件之间相互接口的规范,其作用是 使各种软件构件和应用软件能够用一种统一的标准方式进行交互【2 2 1 。c o m 不 是一种面向对象的语言,而是一种与源代码无关的二进制标准。c o m 所建立 的是一个软件模块与另一个软件模块之间的链接,当这种链接建立之后,模块 之间就可以通过被称之为“接口”的机制来进行通信。组件问的接口通过一种 与平台无关的语言i d l ( i n t e f f a c ed e f i n el a n g u a g e ) 来定义,而且是二进制兼容 的,使用者可以直接调用执行模块来获得对象提供的服务和功能。c o m 标准 增加了保障系统和组件完整的安全机制,并扩展到分布式环境。 c o m 本质上仍然是客户服务器模式。客户( 通常是应用程序) 请求创建 c o m 对象并通过c o m 对象的接口操纵c o m 对象。服务器根据客户的请求创 建并管理c o m 对象。客户和服务器这蘸种角色并不是绝对的。 组件之间的接口是组件软件的关键,同一软件中的组件必须使用同样的接 四川人学硕 学位论文 口标准j 能保证组件之间可以进行通信。c o m 不仅仅提供了组件之间的接口 标准,还引入了面向对象的思想。组件模块为c o m 对象提供了活动的空间, c o m 对象以接口的方式提供服务,这种接口被称为c o m 接口( 如图2 1 ) 。 接口1接口2接口3 图21c o t # 组件、c o m 对象、c o m 接口的关系 c o m 的内部机制非常复杂,这里只介绍c o m 对用户表现的一些基本特 征【1 8 】。 1 ) c o m 作为一项软件工业标准,定义了完整的用以生成对象以及如何保 证对象与其用户之间遽讯的标准机制和规范。c o m 规范是基于二进制的标准 而不是基于语言的规范。这保证了c o m 对象可以用不同的程序语言来开发, 可在不同计算机系统上运行,也可由不同的高级程序语言来调用,只要这些程 序语言和操作系统支持c o m 制定的二进制接口。 2 ) 在c o m 下,组件通过对象支持的接口来使用其提供的服务功能。一个 c o m 组件可能有一个或多个c o m 对象,一个c o m 对象支持个或多个接 口,而每个接口又支持或实现若干个方法( 三者关系见图2 1 ) 。c o m 对象支持 面向对象模型继承。但c o m 只支持接口继承而不支持实现继承。因而c o m 对 象不能实现直接的程序再使用,但可通过包含和聚合的方法来实现程序再使用, 这主要是提高c o m 的适用性。 3 ) c o m 接口不带任何版本,接口一旦公布,即不能作任何修改。若要修 改接口支持的对象方法、参数和语义,必须定义新的接口,赋予新的接口标识 码。采用这种限制,并支持多个接口是c o m 解决版本更新的有效手段。 4 ) c o m 吸取了客户朋艮务器基本思想,一个c 0 m 组件就是一个服务器, 可同时为多个客户提供服务,c o m 组件采用计数( r e f e r e n c ec o u n t i n g ) 的方法控 网川i 大学颂士学位论文 制组件刑象的生存期,为多个客户共享同一个组件对象提供了有效的控制手段。 5 ) 丰富的综合服务功能,包括事务、安全性、消息队列和数据存取,以支 持最广泛的应用。 2 t 3 分布式组件对象模型( d c o m ) 早期的c o m 技术不具备跨计算机的远程调用能力,后期的c o m 增加了 保障系统和组件完整的安全机制,并扩展到分布环境。基于分布式环境下的 c o m 被称作d c o m ( d i s t r i b u t ec o m ,分布式组件对象模型) 。d c o m 是a c t i v e x 的基础,它实现了c o m 对象与远程计算机上的另一个对象之问赢接进行交互。 d c o m 规范定义了分散对象创建和对象间通信的机制,规范本身并不依赖于任 何特定的编程语言和操作系统,但目前该标准只在m i c r o s o rw i n d o w s 平台实 现,这就意味着其它的操作系统平台( 如u n i x ) 目前还不支持a c t i v e x 。 d c o m 的实现采用了d c o m 库的形式,当d c o m 客户对象需要d c o m 服务器对象的服务时,d c o m 库负责生成d c o m 服务器对象并在客户对象和 服务器对象之间建立初始连接,一旦返回服务器对象指针,d c o m 库就不再参 与客户对象与服务器对象之间的工作,两个对象之间可以自由地进行通信。 服务器对象通过d c o m 接口为客户对象提供服务,客户对象不需了解服务 器对象的内部数据表示。接e l 可以看成两个软件构件之间的一种协议,协议表 明服务器对象为客户对象提供一种且仅此一种服务。接口采用全局唯一标识符 ( g u d ) 来保证服务的唯一性。通常的d c o m 构件提供多种服务,那么服务 器对象为每一种服务实现一个接口。当客户对象指针指向相应的服务器对象时, 它就激活服务器对象接口的相应函数。客户对象也许并不知道服务器对象的每 个接口,但这并不妨碍客户对象对服务器对象的使用。当客户对象用完服务器 对象的服务时,它会通知服务器对象,服务器对象就释放它所占有的内存。 d c o m 的好处是显而易见的,由于接口的定义和功能保持不变,d c o m 构 件开发者可以改变接口功能、为对象增加新功能、用更好的对象来代替原有对 象,而建立在构件基础上的应用程序几乎不用修改,大大提高了代码的重用性 【23 1 1 0 四川大学硕学位论义 2 4o l e 及自动化技术 o l e 的原意是对象链接和嵌入( o b j e c tl i n k i n ga n de m b e d d i n g ) 。o l e 起源 早于c o m ,在o l e 的发展过程巾产生了c o m ,但c o m 提出后,才使o l e 技术有了飞速发展。原因是在o l e1 0 中组件与客户之间的通讯,采用的是动 态数据交换机制( d d e ) ,由于d d e 以w i n d o w s 的消息机制为基础,而非基于 接口技术,冈此,效率低、稳定性差,使用不便。 从o l e2 0 开始,m i c r o s o f t 放弃了d d e ,而采用了新的c o m 模型,采用 接口作为程序之间通讯的标准,此后,o l e 技术不再局限于“对象链接和嵌入”, 而成了桌面系统上进行程序通讯的一个实用技术统称。它包括对象的链接、嵌 入、激活和可视化编辑,组件对象、结构化存储、复合文件、统一数据传送、 拖放等一组技术。o l e2 0 的技术构成如图2 2 所示。 图2 2o l e 技术构成 o l e 具有相当复杂的技术内容,这里只对与用户密切相关的自动化技术概 念作一介绍。所谓自动化( 又称o l e 自动化) 就是让一个软件以可编程方式来 使用另一个应用程序所提供的各种服务。由于o l e2 0 以c o m 为基础,因此 实现通用的可编程化显得非常自然。在w i n d o w s 中,大型应用程序( w o r d , e x c e l ,m a p l n f o 等) 都提供了o l e 自动化对象。提供自动化对象的程序称为自 动化服务器,而使用自动化对象的程序则称为自动化控制者。 自动化控制者( 如v b 、v c 、p b 等) 一般都提供一个称为o l e 容器 ( c o n t m n e o 的控制( c o n t r 0 1 ) ,具体处理o l e 服务器和控制者的通信。o l e 自 动化服务器给控制者提供的可编程工具有事件、属性和方法。通过o l e 容器, 四川人学坝| f 亨位论文 可以编程获取或设置o l e 服务器的属性,处理其事件,调用其提供的方法。这 里要注意的是o l e 容器本身也有事件、属性和方法,两者不可混淆,并且o l e 服务器和o l e 容器提供的事件名称往往相同,在p b 中,两者事件冲突时,p b 自动在o l e 服务器事件名前加“o c x ”。 2 5 0 c x 与a c t i v e x 控件 o c x ( o l e c u s t o m c o n t r 0 1 ) 与a c t i v e x 都是o l e 自动化对象,当然也是标 准的c o m 对象,但二者使用的范围和作用有所不同,o c x 起源于v b 的v b x 控制,技术基础是o l e2 0 ,使用对象是3 2 位桌面系统,a c t i v e x 是在o c x 标 准上发展的,其目标是建立小巧、快速灵活的组件以提供一种与操作系统平台 无关的,可以在应用程序之间互相访问对象的机制【2 ”,便于在i n t e r n e t 网络上 传输。a c t i v e x 控件使w e b 服务器不仅可以提供客户感兴趣的数据,它也可以 直接把执行代码随同数据一起发送给客户,客户在得到数据的同时,也可以按 各种方式操作这些数据,a c t i v e x 控件技术是建立w e bg i s 的主要方法之一。 h t m l 语言表述空间数据的能力十分有限,使客户端浏览无法直接查询、分析 空间地理数据,可以将处理、分析g i s 数据的软件模块设计成a c t i v e x 控件, 并包含在h t m l 代码中,连同空间数据一起传输给客户,客户下载这些控件, 自动注册后,用来处理g i s 空间数据。e s r i 的互联网软件m a p o b j e c t s 就是基 于a c t i v e x 技术开发的g i s 控件。 为了统一术语,m i c r o s o f t 把这种在i n t e r n e t 上使用的控件与o c x 一起统 称为a c t i v e x 控件,把所有建立在c o m 和o l e 基础上以及与i n t e m e t 有关的 技术统称为a c t i v e x 技术。 a c t i v e x 与a c t i v e x 控件”h 2 9 】 ( 1 ) a c t i v e x a c t i v e x 是微软公司的构件技术标准,实际上是对象嵌入与链接( o l e ) 的新版本,使o l e 接口加强了对数据和特性的管理,效率更高,而且更加便于 进行i n t e r n e t 互操作。作为针对i n t e r n e t 应用开发的技术,a c t i v e x 被广泛应用 于w e b 服务器以及客户端的各个方面。同时,a c t i v e x 技术也被用于方便地创 叫川大学倾,l 学位论文 建普通的桌面应用程序。 a c t i v e x 既包含服务器端技术,也包含客户端技术。其主要内容是: a c t i v e x 控制( a c t i v e xc o n t r 0 1 ) :用于向w e b 页面、m i c r o s o f tw o r d 等支持a c t i v e x 的容器( c o n t a i n e r ) 中插入c o m 对象; a e t i v e x 文档( a e t i v e xd o c u m e n t ) :用于在w e bb r o w s e r 或者其它支持 a c t i v e x 的容器中浏览复合文档( 非h t m l 文档) ,例如m i c r o s o f tw o r d 文档、m i c r o s o f te x c e l 文档或者用户自定义的文档等: a c t i v e x 脚本描述( a c t i v e xs c r i p t i n g ) :用于从客户端或者服务器端操 纵a c t i v e x 控制和j a v a 程序、传递数据以及协调它们之间的操作等; a c t i v e x 服务器框架( a c t i v e xs e r v e rf r a m e w o r k ) :提供了一系列针对 w e b 服务器应用程序设计各个方面的函数及其封装类,诸如服务器过 滤器、h t m l 数据流控制等; 在i n t e m e te x p l o r e r 中内置j a v a 虚拟机( j a v av i r t u a lm a c h i n e ) ,从而使 j a v aa p p l e t 能够在i n m m e te x p l o r e r 上运行,并可以与a c t i v e ) ( 控制通 过脚本描述语言进行通信。 ( 2 ) a c t i v e x 控件 a c t i v e x 控件是充分利用o l e 和a c t i v e x 技术的自定义控件,是基于与应 用程序无关的思想而设计的,其目标是提供一种面向对象、与操作系统无关、 与机器平台无关、可以在应用程序之间互相访问对象的机制。 a c t i v e x 控件是建立在c o m 标准上的独立的软件元件,提供给用户应用接 口,发送相应的事件,开发者则可以截取这些事件,执行相应的功能。a c t i v e x 控件开发端和使用端是完全独立的,可以用d e l p h i 、v b 等各种语言来开发, 又可以用于不同语言、不同开发平台、不同的系统环境中。 从本质上讲,a c t i v e x 控件是个a c f i v e x 服务器,它能提供所有的o l e 功能和服务,包括可视化编辑、拖放和o l ea u t o m a t i o n 。与所有的a c t i v e x 服 务器样,要使用a c t i v e x 控件,必须先对a c t i v e x 控件进行注册,应用程序 通过注册后得到的类d 号找到控件的数据源进行访问。a c t i v e x 控件可以由 v b 、v c 、d e l p h i 等开发工具生成o c x 文件对自动进行注册,也可以手工注册, 其实质都是通过运行应用程序r e g s v r 3 2 e x e 来实现。 网川人学硕一学位论丈 a c t i v e x 控件除具有o l e 自动化对象的特征之外,还具有一些面向用户的 特征: 1 ) 实地激活。指c o m 对象能在容器窗口内进行实地编辑,虽然o l e 自 动化对象都能进行实地激活,但a c t i v e x 控件被激活时,不象o l e 自动化对 象要与o l e 控制者合并菜单和:r :具条,因而显得非常灵活。 2 ) 属性页。属性页包含了a c t i v e x 控件的一些属性项,利用属性页,可以 在设计阶段设置控件属性,而o l e 自动化对象只有在运行阶段用程序设置属 性值。 3 ) a c t i v e x 由于包含的界面要素要少得多,甚至大多数不包含界面要素, 因此a c t i v e x 一般都小巧玲珑,如:m a p x 控件比其m a p i n f o 要小得多,但实 现的功能差不多。 九十年代的软件工业应该说首先是面向对象( o o ) 的时代,然后就是组件 技术时代。可以说,这种趋势是八十年代软件工程理论和实践的发展必然结果。 软件工程理论非常讲究软件的生命周期,也就是如何提高软件的可维护性、可 重用性,使得软件在版本更新过程中开销最小,产生的效益最大,也就是拥有 总成本( t c o ) 最低。九十年代成熟的面向对象技术为实现软件工程理论提供 了良好的基础,通过把事物封装成具有良好派生关系的类,进而根据需要创建 这个类层次结构中某个类的对象,使得程序代码的可维护性和重用性得到了很 大的提高。而通过组件技术,这些对象可以由多种编程语言来创建,这样,不 仅解决了同一种编程语言生成的代码的可重用性问题,还解决了异种语言之间 的代码可重用性问题,这就是软件组件技术正风靡全球的的秘密。微软在o l e ( 对象链接与嵌入) 的技术的基础上,推出了面向i n t e m e t 的a c t i v e x 。不仅如 此,a c t i v e x 很好地解决了以前的o l e 控件的兼容问题,还很好地解决了在 w i n d o w s 与在i n t e r n e t 上运行的一致性问题 a c t i v e x 控件是v i s u a lb a s i c 工具箱的扩充部分。使用a c t i v e x 控件的方法 与使用其他标准内装的控件,如c h e c k b o x 控件完全一样。在程序中加入a c t i v e x 控件后,它将成为开发和运行环境的一部分,并为应用程序提供新的功能。 四川大学颂七学位论文 a c t i v e x 控件保留了一些熟悉的属性、事件和方法,比如n a m e 属性,它们的 作用同以前一样。这样就保证了v i s u a l b a s i c 程序员的基本能力。而且,a c t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论