设为首页收藏本站

融智技术学院

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 492|回复: 0

IT百科——组件对象模型

[复制链接]
MrLi 发表于 2014-1-27 11:00:10 | 显示全部楼层 |阅读模式
组件对象模型
组件对象模型(COM)是软件组件的一个二进制接口标准,它在1993年通过微软引进。在大多数的程序设计语言中,它被用来启用进程间通信和动态对象的创建。COM是其他几个微软技术和框架的基础,这些技术和框架包括OLE、OLE Automation、ActiveX、COM+、DCOM,Windows shell、DirectX和Windows Runtime。
COM的本质是一种语言无关的实现对象的方式,可以在不同的环境中使用,不同于创建一个对象只能在一个环境中使用,它们甚至可以跨越机器边界。为了精心编写组件,COM允许重用对象,可以不知道它们的内部实现,因为它会强制组件实施者提供定义良好的接口,从而将实现分离。语言的不同语义分配有一定的依据,它们通过引用计数器对自己创建和销毁的对象负责。对象在不同的接口间转换,是通过方法QueryInterface来实现的。继承在COM的首选方法是创建委托及其子对象的方法调用。
COM作为一个接口标准被定义和实施,只在微软的Windows和苹果的核心基础1.3及更高版本的API插件上使用,在任何情况下,实现整个COM接口的一个子集。对于一些应用,COM至少已经通过微软的.NET框架在一定程度上更换了,并通过Windows Communication Foundation(WCF)支持Web服务。但是,COM对象可以通过.NET Interop在所有的.NET语言中使用。网络DCOM使用二进制专有格式,而WCF鼓励使用基于XML的SOAP消息。COM与其他的组件软件接口技术非常相似,例如CORBA和Java Beans,虽然它们拥有各自的优缺点。
不像C++,COM提供了一个稳定的ABI,在不同的编译器中它不会改变。这使得COM接口更加吸引人,因为面向对象的C++库将可以被客户端使用不同的编译器版本编译。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

新突破电商

小黑屋|手机版|Archiver|融智技术学院 ( 京ICP备09018999号  

GMT+8, 2018-6-23 12:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表