`

杆死根活的COM:逝者不死,必将再起,其势更猛

阅读更多
概述:COM全称为Component Object Model,即组件对象模型,是微软在1993年推出的用于软件组件的二进制接口标准。在上个世界90年代末COM异常风光,可是到新世纪后,COM曾一度被微软抛弃并濒临死亡,随着WinRT的出现和现代C++的复兴,COM将再度复苏。
杆死根活的COM

COM全称为Component Object Model,即组件对象模型,是微软在1993年推出的用于软件组件的二进制接口标准,它被用于在大范围的编程语言类型中启动进程间的通信(inter-process communication)以及动态对象的创建。

COM的本质是以语言无关的方式实现对象,这种方式能够用于不同的创建环境中,甚至可以跨越机器的限制。对于创作良好的组件,COM允许在不知道内部如何实现的情况下进行对象重用,它促使组件实施者提供与实现相分离的定义良好的接口。

在.Net出现之前,微软对COM编程非常推崇。从1995年到2002年,有许多的书籍和网络资源都在谈论COM,COM+和DCOM。但是,自从微软决定确立C#为其推荐语言后,许多微软的追随者们便放弃了COM,他们表达出一种讯息:“C#才是最好的。”

举个例子,如果你在亚马逊网站上搜索COM书籍,其中绝大多数是来自于2000年,只有极少数晚于这个时间。

杆死根活的COM

然而,具有讽刺意味的是,当COM如日中天的时候,微软决定使用新技术.Net来取代COM,而这个时间就开始于2000年。

但即使是2000年以后,在微软彻底放弃COM之后,仍然有许多的项目选择使用它。大约到2005年,C#2问世的时候,COM的日子就算到头了。

下图是来自于google trend上关于“组件对象模型”感兴趣度随时间推移变化的图表:

杆死根活的COM

我们可以看到COM目前已经几近死亡。

转机出现在2011年,微软宣布基于COM的WinRT将会作出一些修改。然后在这一年里,我们开始讨论C++的复兴,而新的C++就是这个框架内最好的语言。

最终,COM没有彻底的死去,它在进入一个复苏的阶段,而这会是一次成功的复苏。

为什么微软会决定重新启用COM?

COM的复兴更多是来自于C++的复兴。当微软选择将回归到C++,并将其作为WinRT平台“最好的住户”时,他们需要一门技术来定义来自于.Net语言的组件并使用它们。为什么微软会选择重新启用COM?那是因为COM技术在多年以前就已经由微软的开发团队使用和验证了,虽然COM过去有很多的缺点,但是微软已经决定在WinRT上解决其中的大部分问题。

为什么微软会选择回归到C++?

这个问题的答案只有微软自己才能解答。或许是因为他们决定使用由他们自己主导的相同技术来发展多个平台(个人电脑、平板电脑和手机)。在开发资源上,平板电脑和手机相比个人电脑来说更少,因此选择C++作为WinRT框架的基本语言是最佳的选择。

故事还在继续…

这不是故事的结局,随着.Net框架的开源、OmniSharp和mono社区合作确定将.Net运用于主要平台(PC, Mac, Android…) 等消息的宣布,不久的将来会产生很多的变化。

 

本文翻译自COM is dead, Long live COM.

1
2
分享到:
评论

相关推荐

    逝者安息手抄报

    逝者安息手抄报

    安慰逝者家属的话.doc

    安慰逝者家属的话.doc

    初中语文文摘生活与逝者对话

    初中语文文摘生活与逝者对话

    愿逝者安详,生者前进.docx

    愿逝者安详,生者前进.docx

    关于致逝者家属的慰问信.doc

    关于致逝者家属的慰问信.doc

    春天,去村子里吊唁一位逝者

    春天,去村子里吊唁一位逝者

    初中语文文摘社会追思逝者是一种公民教养

    初中语文文摘社会追思逝者是一种公民教养

    网墓程序之母亲安息 V1.0版

    逝者生前的音容笑貌、生平事迹、作品文字等等都可以在这里永存,使后人能全面地、系统地了解逝者的一生--这里既是逝者在网络世界中的灵魂立足之地,也是逝者在网上的一座个人纪念馆;同时,母亲安息网公墓所特有的...

    普通人去世后,其社交网络账号何去何从

    例如,日本有一部名为《人生删除事务所》的日剧,反映了在逝者去世后清理其数字足迹的需求,引发了公众对死后数字遗产处理的关注。 同时,个人数据的安全和隐私保护也是重要议题。正如Mio的担忧,她希望自己的日记...

    行业文档-设计装置-多媒体墓碑.zip

    这种设计装置不仅保留了传统的墓碑功能,还加入了多媒体元素,如触摸屏、音频播放、视频展示等,使得亲友可以更直观、更丰富地回顾逝者的一生,为祭奠活动提供了全新的体验。 【多媒体技术的应用】 1. 触摸屏交互...

    Gravestones:死时用自己的东西埋葬一块墓碑

    《Gravestones:用个人物品为逝者立碑》 在编程世界中,"Gravestones"是一个独特而有趣的项目,它结合了游戏设计与数据存储的概念,特别是使用PHP语言实现。该项目的核心在于模拟一种现象:当玩家在游戏中死亡时,...

    挽联怎么写

    【挽联怎么写】 ...在实际创作时,可以根据逝者的具体情况进行个性化创作,使其更能体现逝者的个性和影响力。希望这份《挽联怎么写》的参考资料能帮助到有需要的朋友,让我们共同传承和发扬这一传统文化。

    挽联写法.doc

    挽联的书写有多种多样,一般有“沉痛悼念 XXX 同志”,“XXX 千古”等,也可以更具体,更亲切些,如“安息吧,敬爱的爸爸”、“XXX,你安息吧”等。 在写挽联时,需要注意以下几点: 1. 挽联的格式要求上联与下联...

    网墓程序之母亲安息 v1.0

    母亲墓地及纪念管理: 用户可在这里对所申请的逝者母亲墓室各部分内容进行全面 管理,如新建墓地、定制墓碑、新建母亲纪念馆、管理母亲纪念馆、修改资料、上传 照片、制作家族墓群和亲情链接等。...

    公墓网站设计方案公墓网站设计方案

    随着科技的发展,公墓网站已经成为一种新型的悼念和纪念逝者的方式,它将现实与虚拟世界相结合,为用户提供便捷、文明的悼念途径。本方案针对大庆市净园公墓的网站建设,旨在打造一个集网上纪念、在线丧葬服务和墓园...

    网墓程序之母亲安息 v1.0 单用户版

    本网墓程序是根据母亲安息 V1.0版改编而成,主要提供给个人网站的单个用户使用 (下载后更改用户界面即可),本程序主要完成以下功能: 网上祭奠: 用户可在逝者母亲的墓地及纪念馆里完成献花、上供、烧香、...

    mh370祝福程序 v1.0.rar

    描述中提到的“可以直接上传到二级目录”,这意味着这个ASP程序设计得相对独立,不需要在网站的根目录下运行,可以在服务器的任何二级目录下部署。这使得用户可以更加灵活地将程序集成到他们的网站结构中,而不会...

    网络游戏-数字化网络墓园.zip

    通过虚拟墓园,年轻一代可以了解到先人的生平事迹,学习家族历史,从而更好地理解家族文化和价值观。同时,它也是一种新型的公共记忆载体,记录着社会发展和时代变迁的印记。 然而,数字化网络墓园也引发了一些讨论...

    行业文档-设计装置-骨灰盒存放架应急机械锁开启结构.zip

    骨灰盒存放架是殡葬行业中重要的设施之一,主要用于安全存放骨灰盒,为逝者提供一个庄重、安静的安息之地。应急机械锁开启结构则是骨灰盒存放架安全设计的重要组成部分,旨在确保在电力中断或其他紧急情况下,仍能...

    2020殡葬管理系统

    殡葬管理系统作为现代社会信息化建设的一部分,其重要性不言而喻。2020年的殡葬管理系统旨在为殡仪馆提供一个全面集成的业务信息管理平台,旨在解决传统殡葬业务中的数据分散、信息不统一等问题,提升工作效率,优化...

Global site tag (gtag.js) - Google Analytics