- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
我们的梦想? 用COM重造我们的软件
-- 向佳本文选自:Visual C++/MFC开发指南
关键词:COM OLE ACTIVE X CONTAINER AUTOMATION CONTROLE Iunknown IDispatch SELF_CONTAINED?CLASS FACTORY DCOM COM+ MTS MSMQ概论一个应用程序通常是由一个二进制文件组成。当编译器生成此文件后,在对下一版本重新编?译并发行新生成的版本值之前,应用程序一般不会发生任何变化。操作系统、硬件及客户需?求的改变都必须等到整个应用程序被重新编译后才能够得以认可。整个软件业就是这样随着?已发行软件的日益“老化”而奔向未来的。目前,这种状况已经发生了变化。开发人员找到?的一种方案是将单个的应用程序分割成多个独立的部分。即组件。也就是将软部件看成对象。这种做法的好处是可以随技术的不断发展而用新的组件取代已有的组件。此时的应用程序将?不再是以前那样是一个在发行前就已注定过时的实体,而是可以随着新组件不断取代就组件?而趋于完善。这一点对我们来说并没有太大的诱惑力。谁都知道我们不可能天天给用户发行新的版本。但有一点你一定喜欢,当你根据需要更改了DLL中的一些实现函数,生成了DLL后,不需要重新编?译整个程序,就能使用新的性能。是不是有些不可思议。使用COM模型给软件带来的影响将是巨大的。是软件工业的革命。对于一个软件的编程者,谁?不想在编程中能够使用像MFC那样方便的使用类,而不是面对枯燥而又嵌得很深的函数,使人?眼花缭乱全局变量。在改动程序前花费大量的时间去理解源程序。COM提供了一种二进制标准?的、面向对象、可扩充、可重用的通讯协议。如果你继续读下去,就会发现构建基于COM的测?量软件给你带来的好处将是巨大的。花点时间、金钱将得到事半功倍的回报。每个程序员恐怕都有这样的经历:当修改一个大型程序时,由于程序本身结构的复杂性,使?某些功能的实现难度非常大。怎样才能构造出一个逻辑清晰、结构完整、功能相对独立、便?于扩充的逻辑模型?MICROSOFT提供了COM,APPLE有它的OPENDOC,IBM有SOM。现在的软件业?正在走着二十年前硬件所走过的道路。二十年前,人们制造了集成电路块,用一块块能完成?特定工作的小芯片,构造新的更大的芯片,去完成新的功能。这就是软件业所面临的问题。?当今计算机界最热门的两项新技术是COM和DCOM。COM似乎成为了解决所有软件开发弊端的良?方。当然这不意味着使用COM后你将一劳永逸。软件业是没有”银弹”神话的。只不过COM对?我们今天面临的新问题有了更好的解决方案。例如分布式程序的开发,事务处理的安全,跨?平台的可重用性------使用组件的优点:使用组件的优点是应用程序可随时间的流逝而发展进化。除此之外,使用组件可是对已有应?用程序的升级更方便和灵活。组件构架从本质上讲是可定制的,用户可以用更能满足他们需?要的组件来将某个组件替换掉。象类一样,COM是一个软件编程的构造模型,而不是一个数学?模型。一组件技术的演变观察组件技术的演变是理解COM和DCOM的开始,虽然面向对象技术已经经历了一个完整的自身?演变的过程,但组件技术作为面向对象技术的一个派生物,却有着自己的演变过程。组件技?术的演变的主要根基是WINDOWS OS。当然,其他的一些技术也起了很大的作用。1.在WINDOWS 3.0中出现的定制控制(CUSTOM CONTROL)。一个定制控制就是一个可以输出?定义好的函数集合的动态链接库。但与一般的DLL 不同的是,一个定制控制能进行特性操作?,并能处理由用户或程序输入所引起的触发事件。2.1991年MICROSOFT推出的VBX,使小型的可重用组件的重要作用体现得淋漓尽致。但遗憾的?是,VBX软件包内约束太多,16位的结构,且没有一个开放的接口,限制了VBX的应用。3.也就是同一年MICROSOF开发了OLE1.0规范。(OBJECT LINKING AND EMBEDDING )。OLE1.0努力朝着文件中心的方向发展,而不是传统的以应用为中心的发展方向。“复合文档”是?这个思想的产物,是在单个文件中以文本、图形、视频、图形和声音等多种格式存储数据的?方法。office套件中的word我们是再熟悉不过了。但ole1.0由于自身的复杂性,及实现的技?术方面的不成熟。在市场上遭到了冷遇。4.Microsoft 并没被ole1.0的困难所吓倒,而是继续致力于ole的改进与提高。1993年发布?了ole2.0规范,推出了一个完全基于对象的服务结构,易于扩展、定制和增强。通过这种结
文档评论(0)