翻新时间:2013-12-14
ActiveX、OLE和COM介绍
ActiveX、OLE和COM介绍
戴宗友 汪涛
熟悉面向对象编程和网络编程的人一定对ActiveX、OLE和COM/DCOM这些概念不会陌生,但是它们之间究竟是什么样的关系,对许多们还是比较模糊的。
在具体介绍它们的关系之间,我们还是先明确组件(Component)和对象(Object)之间的区别。组件是一个可重用的模块,它是由一组处理过程、数据封装和用户接口组成的业务对象(Rules Object)。组件看起来像对象,但不符合对象的学术定义。它们的主要区别是:
1)组件可以在另一个称为容器(有时也称为承载者或宿主)的应用程序中使用,也可以作为独立过程使用;
2)组件可以由一个类构成,也可以由多个类组成,或者是一个完整的应用程序;
3)组件为模块重用,而对象为代码重用。
现在,比较流行的组件模型有COM(Component Objiect Module,对象组件模型)/DCOM(Distributed COM,分布式对象组件模型)和CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)。到这里,已经出现了与本文相关的主题COM,而CORBA与本文无关,就不作介绍。之所以从组件与对象的区别说起,是想让大家明确COM和CORBA是处在整个体系结构的最底层,如果暂时对此还不能理解,不妨继续往下看,最后在回过头看一看就自然明白了。
现在开始阐述ActiveX、OLE和COM的关系。首先,让大家有一个总体的概念,从时间的角度讲,OLE是最早出现的,然后是COM和ActiveX;从体系结构角度讲,OLE和ActiveX是建立在COM之上的,所以COM是基础;单从名称角度讲,OLE、ActiveX是两个商标名称,而COM则是一个纯技术名词,这也是大家更多的听说ActiveX和OLE的原因。
既然OLE是最早出现的,那么就从OLE说起,自从Windows操作系统流行以来,“剪贴板”(Clipboard)首先解决了不同程序间的通信问题(由剪贴板作为数据交换中心,进行复制、粘贴的操作),但是剪贴板传递的都是“死”数据,应用程序开发者得自行编写、解析数据格式的代码,于是动态数据交换(Dynamic Data Exchange,DDE)的通信协定应运而生,它可以让应用程序之间自动
下载文档
网友最新关注
- 智救小鸭子
- 洗衣服
- 我的军令状
- 有趣的课间活动
- 手捧空花盆的孩子回家以后
- 绿荫场上
- 鼓和香草读后感
- 中秋灯会
- 春天来了
- 舅母的女儿
- 采蘑菇
- 乐乐和老鼠
- 美丽的小溪边
- 我爱我的家乡——瓜园
- 读《苹果落地》有感
- 涵管施工方案
- 屋面排水的做法
- 建筑给排水工程节水措施探讨
- 家庭装修水电施工实用口诀要牢记
- 管材基本常识
- 给排水工程
- 钢管阴极保护(牺牲阳极)防腐施工安全技术交底
- 阀门的选择、设置部位及优缺点比较
- 浅谈排水系统中提升设备与局部处理
- 木龙骨隔断墙的施工工艺流程
- 卫生设备同层排水系统技术问答
- 刚性防水套管和柔性防水套管的区别?
- 浅谈北方地区建筑给排水设计
- 阀门的优缺点及分别适用场合的综合概述
- 雨污水管线施工方案
- 《小小的船》教学设计四
- 《要下雨了》教学设计之九
- 《要下雨了》教学设计之九
- 《小小的船》教学设计一
- 《要下雨了》综合资料二
- 《要下雨了》教学设计之十
- 《要下雨了》综合资料
- 《要下雨了》教学设计之九
- 《要下雨了》教学设计之十一
- 《要下雨了》教学设计之四
- 《要下雨了》教学设计之五
- 《小小的船》教学设计五
- 《小小的船》教学设计三
- 《要下雨了》综合资料二
- 《小小的船》教学设计二