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


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

    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的存在。

  • 相关阅读:
    echarts 折线图(移动端)X轴显示不全
    文字超出省略号类型
    逻辑运算为true
    13年省赛总结
    PyCharm专业版破解教程
    django之定义统一返回数据格式与GET/POST装饰器
    Xmind8破解教程
    django之mysqlclient安装
    django之“static”全局设置
    django之集成第三方支付平台PaysAPI与百度云视频点播服务接入
  • 原文地址:https://www.cnblogs.com/3echo/p/414788.html
Copyright © 2020-2023  润新知