组件对象模型(COM)的概念

COM,即组件对象模型,是关于如何建立组件以及如何通过组件建立应用程序的一个规
范,说明了如何可动态交替更新组件。

组件对象模型(COM),是微软公司为了计算机工业的软件生产更加符合人类的行为方
式开发的一种新的软件开发技术。在COM构架下,人们可以开发出各种各样的功能专一
的组件,然后将它们按照需要组合起来,构成复杂的应用系统。由此带来的好处是多方
面的:可以将系统中的组件用新的替换掉,以便随时进行系统的升级和定制;可以在多
个应用系统中重复利用同一个组件;可以方便的将应用系统扩展到网络环境下;COM与
语言,平台无关的特性使所有的程序员均可充分发挥自己的才智与专长编写组件模块;
等等。

COM是开发软件组件的一种方法。组件实际上是一些小的二进制可执行程序,它们可以
给应用程序、操作系统以及其他组件提供服务。开发自定义的COM组件就如同开发动态
的,面向对象的API。多个COM对象可以连接起来形成应用程序或组件系统。并且组件可
以在运行时刻,在不被重新链接或编译应用程序的情况下被卸下或替换掉。Microsoft
的许多技术,如ActiveX, DirectX以及OLE等都是基于COM而建立起来的。并且
Microsoft的开发人员也大量使用COM组件来定制他们的应用程序及操作系统。

COM所含的概念并不止是在Microsoft Windows操作系统下才有效。COM并不是一个大的
API,它实际上象结构化编程及面向对象编程方法那样,也是一种编程方法。在任何一
种操作系统中,开发人员均可以遵循“COM方法”。

一个应用程序通常是由单个的二进制文件组成的。当编译器生成应用程序之后,在对下
一个版本重新编译并发行新生成的版本之前,应用程序一般不会发生任何变化。操作系
统,硬件及客户需求的改变都必须等到整个应用程序被重新生成。

目前这种状况已经发生变化。开发人员开始将单个的应用程序分隔成单独多个独立的部
分,也既组件。这种做法的好处是可以随着技术的不断发展而用新的组件取代已有的组
件。此时的应用程序可以随新组件不断取代旧的组件而渐趋完善。而且利用已有的组
件,用户还可以快速的建立全新的应用。

传统的做法是将应用程序分割成文件、模块或类,然后将它们编译并链接成一个单模应
用程序。它与组件建立应用程序的过程(称为组件构架)有很大的不同。一个组件同一
个微型应用程序类似,即都是已经编译链接好并可以使用的二进制代码,应用程序就是
由多个这样的组件打包而得到的。单模应用程序只有一个二进制代码模块。自定义组件
可以在运行时刻同其他的组件连接起来以构成某个应用程序。在需要对应用程序进行修
改或改进时,只需要将构成此应用程序的组件中的某个用新的版本替换掉即可。

(0)

相关推荐

  • 《使用IEC61499为控制系统建模》

    译者的话 也许和IEC61499 标准还不够普及有关,关于IEC61499 标准的书籍并不多,Alois Zoitl & Robert Lewis 二位合著的这本书是网络上论文中被引用最多的一 ...

  • Spring 学习一(了解Spring)

    Spring 学习一(了解Spring)

  • 开放过程自动化(OPA)的最新进展-2018

    开放过程自动化组织持续致力于标准的开发,以帮助制造企业实现可互操作的过程控制. 制造企业对软件的需求正在发生改变.ARC 咨询集团的分析师Harry Forbes援引某自动化供应商CEO 所说的, 客 ...

  • 结合Delphi和Python的优势:使用Delphi VCL组件快速构建超现代的Python本机Windows GUI桌面酷炫用户界面应用

    有时您的应用程序需要一个用户界面,但是为Python应用程序制作用户界面最好的方法是什么?输入用于Python的DelphiVCL.VCL是成熟的Windows本机GUI框架,具有庞大的包含的可视组件 ...

  • 汽车组件概念详解:硬件、软件与系统

    当我们讨论软件,硬件,功能层面的分解与集成,从属及映射关系时,会牵扯出元件,构件,中间件,组件,模块,系统等很多概念,乱不乱?非常乱.但如果无法区别这些概念,在沟通的基础语言上就会出现大量问题,这是不 ...

  • 谈谈 SAP 产品 UI 开发中的组件概念

    这是 Jerry 2021 年的第 54 篇文章,也是汪子熙公众号总共第 331 篇原创文章. 任何企业级软件的前端开发,都离不开组件(Component)这个概念.撇开具体的 UI 开发技术不谈,所 ...

  • SAP 产品 UI 里的容器组件的概念和开发概述

    这是 Jerry 2021 年的第 68 篇文章,也是汪子熙公众号总共第 345 篇原创文章. Jerry 之前的文章,谈谈 SAP 产品 UI 开发中的组件概念,曾经提到,无论基于何等开发技术的 S ...

  • 我国旅游业用地概念内涵及分类探讨

    对旅游业用地的界定是旅游业用地政策研究的基础问题.本文拟在对法律法规.政策文件和文献中的旅游业用地相关提法进行梳理的基础上,探讨符合我国土地管理制度和旅游业发展实践的旅游业用地概念和分类. 一.法律法 ...

  • 灵素之问 | 伤寒论得名及其概念演变与误解

    原创 忆忘 腔调中医 4月22日 灵素之问 还原古人观察视角和中医经验理法的演进. 栏主 忆忘先生,从事临床工作,研习传统文化和中医经典,索求源流,力图还原古人的观察视角和经验及理法的演进. &quo ...

  • 任应秋:气血在生理方面的概念之“气”篇

    中医之声 医学资讯 公众号 气和血是构成机体的两大基本物质,故<灵枢·本脏篇>说:"人之血气精神者,所以奉身而周于性命者也."精为气所化生,神藏于血液之中,因此,精神还 ...

  • 任应秋:气血在生理方面的概念之“血”篇

    中医之声 医学资讯 公众号 血是机体较多的物质之一,而且是不可少的物质之一.<景岳全书·血证>说:"血即精之属也,但精藏于肾,所蕴不多,而血富于冲,所至皆是."正因为血 ...

  • 同步拓展阅读:新概念英语第3册第21课

    一.往期回顾 同步拓展阅读:新概念英语第3册第20课 [参考答案] 1-5 FFFTF 二.本期内容 [课文主题] 第21课讲的是现代拳击运动的先驱蒙多萨(Mendoza)的故事,所以我选择了一篇有关 ...

  • A0 字节系广告入门基础概念篇

    A1 信息流广告优化是份什么样的职业? A2 头条信息流广告底层竞价逻辑 A3 头条信息流广告搭建流程介绍 A4 头条信息流账户优化方法论 不问不知道,一问吓一跳! 居然有同学,连最基础的广告入门相关 ...