组件式开发与COM组件.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
组件式开发与COM组件.doc

组件概念:组件是模块化程序设计方法发展到一定阶段的产物,在软件工程的角度来考虑,开发者总是希望把一个庞大的应用程序划分成多个模块。其中,每个模块都保持一定的功能独立性,在协同工计良好的应用系统往往被切分成一些组件,这些组件可以单独开发、单独编译,甚至单独调试和测试。当所有的组件开发完成后,把他们组合在一起就得到了完整的应用系统。我们把每一个这样的模块称之为组件。 目前,在软件开发领域,一场新的革命正在悄悄兴起,这是由日趋成熟的组件技术引发的。几年以前,当微软公司首先使用OLE (Object Linking Embedding对象链接与嵌入)的时候,其初衷是为了增强软件的互操作性。然而在使用过程中,人们逐渐认识到这一技术背后的实质性内容和它在软件开发中所扮演的重要角色。组件技术将以前所未有的方式提高软件产业的生产效率,这一点已逐步成为软件开发人员的共识。传统的Client/Server结构、群件、中间件等大型软件系统的构成形式,都将在组件的基础上重新构造。 组件技术使近二十年来兴起的面向对象技术进入到成熟的实用化阶段。在组件技术的概念模式下,软件系统可以被视为相互协同工作的对象集合,其中每个对象都会提供特定的服务,发出特定的消息,并且以标准形式公布出来,以便其他对象了解和调用。组件间的接口通过一种与平台无关的语言IDL(Interface Define Language接口定义语言)来定义,而且是二进制兼容的,使用者可以直接调用执行模块来获得对象提供的服务。早期的类库,提供的是原代码级的重用,只适用于比较小规模的开发形式;而组件则封装得更加彻底,更易于使用,并且不限于C++之类的语言,可以在各种开发语言和开发环境中使用。 由于组件技术的出现,软件产业的形式也将会有所改变。大量组件生产商会涌现出来,并推出各具特色的组件产品;软件集成商则利用适当的组件快速生产出用户需要的某些应用系统;大而全的通用产品将逐步减少;很多相对较为专业,但用途广泛的软件,如GIS、语音识别系统等,都将以组件的形式组装和扩散到一般的软件产品中。 什么是组件式GIS? ComGIS的定义 GIS软件开发中的应用。认识ComGIS,首先需要了解所依赖的技术基础--组件式对象模型和ActiveX控件。 COM是组件式对象模型(Component Object Model)的英文缩写,是OLE和ActiveX共同的基础。COM不是一种面向对象的语言,而是一种二进制标准。COM所建立的是一个软件模块与另一个软件模块之间的链接,当这种链接建立之后,模块之间就可以通过称之为“接口”的机制来进行通信。COM标准增加了保障系统和组件完整的安全机制,扩展到分布式环境。这种基于分布式环境下的COM被称作DCOM (Distribute COM分布式组件对象模型)。DCOM实现了COM对象与远程计算机上的另一个对象之间直接进行交互。 ActiveX是一套基于COM的可以使软件组件在网络环境中进行互操作而不管该组件是用何种语言创建的技术。作为ActiveX技术的重要内容,ActiveX 控件是一种可编程、可重用的基于COM的对象。ActiveX控件通过属性、事件、方法等接口与应用程序进行交互。 一些软件公司专门生产各种用途的ActiveX控件,比如:数据库访问、数据监视、数据显示、图形显示、图像处理,甚至三维动画等等。几个著名的GIS软件公司把COM技术应用于GIS开发,纷纷推出由一系列ActiveX控件组成的ComGIS软件,比如Intergraph公司的GeoMedia、ESRI的MapObjects、MapInfo公司的MapX等。 许多WebGIS软件包均采用HTML标准,活动内容采用Java applets(SUN 标准)或者 ActiveX(Microsoft 标准)进行传递。新型的分布式面向对象WebGIS可以采用CORBA/Java或者DCOM/ActiveX技术进行开发。ActiveX控件不仅可以用于一般的ActiveX容器程序 (比如Visual Basic、Delphi等) ,而且能嵌入Web页面中。任何ActiveX控件都可以设计成Internet控件,作为Web页面的一部分,Web页面中的控件通过脚本(Script)互相通信。因此,ComGIS是WebGIS的一种解决方案,而基于这一方案的WebGIS通常比基于Java的运行速度快。 简单地说,ComGIS就是采用了面向对象技术和组件式软件的GIS系统(包括基础平台和应用系统)ComGIS的基本思想是把GIS的各大功能模块划分为几个组件,每个组件完成不同的功能。各个GIS组件之间,以及GIS组件与其它非GIS组件之间,都可以方便地通过可视化的软件开发工具集成起来,

文档评论(0)

ziyouzizai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档