收藏 分享(赏)

COM技术.ppt

上传人:eukav 文档编号:5585311 上传时间:2019-03-09 格式:PPT 页数:13 大小:328KB
下载 相关 举报
COM技术.ppt_第1页
第1页 / 共13页
COM技术.ppt_第2页
第2页 / 共13页
COM技术.ppt_第3页
第3页 / 共13页
COM技术.ppt_第4页
第4页 / 共13页
COM技术.ppt_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、COM技术,12软件工程(服务外包)1班 奚忆楠,目录,一、定义 二、优点 三、历史 四、发展 五、国内现状 六、概念 七、创建COM对象 八、软件发展面临的问题和趋势,1、定义,COM(Component Object Model,组件对象模型),是由微软推出的一套接口规范,通过设定不同组件之间需要遵守的标准与协议,主要用来跨语言、跨进程之间的模块通信。 所谓COM是一种说明如何建立可动态互变组件的规范,此规范提供了为保证能够互操作,客户和组件应遵循的一些二进制和网络标准。通过这种标准将可以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同、使用的开发语言是否一致以及是否运行于同一

2、台计算机。,简单地说,COM是一种跨应用和语言共享二进制代码的方法。与C+不同,它提倡源代码重用。ATL便是一个很好的例证。源码级重用虽然好,但只能用于C+。它还带来了名字冲突的可能性,更不用说不断拷贝重用代码而导致工程膨胀和臃肿。,2、优点,首先,用户一般希望能够定制所用的应用程序,而组件技术从本质上讲就是可被定制的,因而用户可以用更能满足他们需要的某个组件来替换原来的那个。 其次,由于组件是相对应用程序独立的部件,我们可以在不同的程序中使用同一个组件而不会产生任何问题,软件的可重用性将大大的得到增强。 第三,随着网络带宽及其重要性的提高,分布式网络应用程序毫无疑问的成为软件市场上越来越重要

3、的买点。组件架构可以使得开发这类应用程序的过程得以简化。,3、历史,OLE(Object Linking & Embedding )是1991年首次出现的(是WINDOWS3.1自带的)。OLE最初的含义是对象链接和嵌入,当时用DDE(动态数据交换)作为底层通讯协议。 1993,COM首次出现。微软推出OLE2.0,开始用COM代替DDE作为底层通讯协议。这也是COM第一个重要的用途。 1996年,大多数开发人员开始编写32位的WIN95应用程序。他们发现,OLE使用COM的方式是一种非常好的设计软件的方法。开发人员开始使用类似的方法编写自己的对象和界面。另外,操作系统也开始要求使用COM技术

4、编程,如编写WIN95用户界面。这些即不是OLE,也不是AUTOMATION,那么他到底是什么呢?这个属于大多数人倾向于使用COM。,4、发展,1996年,微软推出NT4.0,DCOM首次出现,作为NT的一部分。它实现了将COM在分布式系统中的应用。 1997年开始流行ATL。COM作为一种技术规范,最早是由C语言来实现的,但是实现起来比较复杂。出现VC以后,又对COM进行了预制和封装,大大简化COM应用的开发。这就是ATL(Active Template Library)。,5、国内现状,在对象技术和组件技术方面,国内落后 问题:好的技术没能及时引进了缺乏好的教材、技术杂志、技术书籍缺乏良好

5、的教育环境的工业环境,6、概念,1)COM接口:接口只不过是一组函数。这些函数被称为方法。接口名字以大写的I开头,例如C+中的IShellLink,接口被设计成一个抽象基类,其中只有纯粹的虚拟函数。接口可以从其它接口继承,这里所说的继承的原理就好像C+中的单继承。接口是不允许多继承的。2)coclass:简称组件对象类component object class,被包含在DLL或EXE中,并且包含着一个或者多个接口的代码。组件对象类(coclasss)实现这些接口。COM对象在内存中表现为组件对象类(coclasss)的一个实例。,3)组件: a.进程内组件:Inproc server-Exp

6、ort Entrysb.进程外组件:Out of proc server,c.远程组件:remote server,7、创建COM对象,为了创建COM对象并从这个对象获得接口,必须调用COM库的API函数,CoCreateInstance()。其原型如下:HRESULT CoCreateInstance ( REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID riid, LPVOID* ppv );,8、软件发展面临的问题和趋势,问题:软件的复杂度增加软件的升级和更新分布式软件的发布的配置依赖于全才开发人员软件的可扩展性趋势:组件软件、软件组件软件基础设施的重要性软件的可重用性要求API的多样化软件方案(solution),consulting的市场,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑环境 > 建筑资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报