COM原理笔记之一 —— 概述篇

来源:互联网 发布:淘宝企业店铺 个体户 编辑:程序博客网 时间:2024/05/26 12:58

COM(组件对象模型,Compent Object Model)是Microsoft提出来的组件标准,它不仅定义了组件程序之间进行交互的标准,并且也提供了组件程序进行所需要的环境。

一、两种进程模型:

进程内组件:以动态链接库的形式出现(.dll);

进程外组件:以可执行程序的形式出现(.exe);

进程内模型的优点是效率高,但组件不稳定会引起客户进程崩溃,因此组件可能会危及客户。

进程外模型的优点是稳定性好,组件进程不会危及客户程序,但效率相对较低。

二、组件软件与软件组织:

组件软件:是指按组件模型组合而得到的软件。

软件组织:是指构成组件软件的每个组件。

三、对象与接口:

对象是某个类(Class)的一个实例,而类则是一组相关的数据和功能组合在一起的定义。每个对象用一个128GUID来标识,称为CLSIDclass indentifer)类标识符或类ID

接口是一组逻辑上相关的函数集合,其函数也称为接口成员函数。每个接口用128位的全局唯一标识符(Globally Unique Identifier)来标识接口。

四、COM特性

1、语言无关性:

COM规范的定义不依赖于特定的语言,它所采用的是一种二进制代码级标准,而不是源代码级标准。

2、进程透明性:

COM库负责组件程序的定位,管理组件对象的创建和对象与客户之间通信,对用户来讲这是透明的。

3、可重用性:两种机制实现对象的重用

包容方式:对象1包含对象2,当对象1需要用到对象2的功能时,它可以简单地把实现交给对象2来完成。虽然对象1和对象2支持同样的接口,但对象1在实现接口时实现调用了对象2的实现。

聚合方式:对象1只需要简单地把对象2的接口递交给客户即可,对象1并没有实现对象2的接口,但它把对象2的接口也暴露给客户程序,而客户程序并不知道内部对象2的存在。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 如果婚姻无法维持该怎么办 捡了一只流浪狗怎么办 微博加载不出来怎么办 我的脾气很暴躁怎么办 歌单恢复已删除怎么办 家里破产了我该怎么办 对付有心计的人怎么办 上嘴唇无故肿了怎么办 下嘴唇肿了一半怎么办 狗狗早上叫不停怎么办 狗在家乱咬东西怎么办 狗狗晚上一直叫怎么办 金毛幼犬晚上叫怎么办 金毛晚上老是叫怎么办 5岁宝宝总尿裤子怎么办 2岁宝宝尿裤子怎么办 2周岁宝宝尿裤子怎么办 5岁宝宝尿裤子怎么办 模拟人生4不怀孕怎么办 狗狗的毛打结怎么办 狗狗生病了不吃东西怎么办 给领导送礼不收怎么办 国外弃货,货代怎么办 不小心拜了阴庙怎么办 要考试了不想考怎么办? 刚怀孕喝了红酒怎么办 不知道该怎么办的成语 墙纸3年了有味道怎么办 本命佛不要了怎么办 本命佛不想戴了怎么办 刚养的猫怕人怎么办 吃了马蜂蛹过敏怎么办 三星s5边框掉漆怎么办 一楼厕所反味怎么办 左脸颊反复长痘怎么办 头条指数650以后怎么办 6s电池不耐用了怎么办 天刀邮箱满了怎么办 吃了降压药血压还高怎么办 后脖颈发际线低怎么办 低头久了脖子疼怎么办