求教“面向对象”与“面向组件”系统分析的区别,com高手请进!(100分)

  • 主题发起人 主题发起人 tansin
  • 开始时间 开始时间
T

tansin

Unregistered / Unconfirmed
GUEST, unregistred user!
以前用c++时,一个系统按功能划分成不同的模块,这些模块都由c++对象表达。
同样是这个系统,同样有这些模块,现在按com规范编写,这每个模块都简单的由原来
的c++对象进化而来吗?如果是,原来c++对象之间的通信方式变的不可用,将会变的
非常的痛苦。或者是com对象的粒度比c++对象的粒度要大一些?
总之,让我困惑的是“面向对象”与“面向组件”系统分析的区别!
 
com对象的粒度比c++对象的粒度要大一些,这也是我的理解。
同时为了通用,com考虑二进制重用,所以有更多的协议。
一个com对象可以由多个类组成,向外界公布特定的功能接口。
而c++类也可以使用或者说依赖于一个或多个com对象,来实现自己的功能。
不知道理解得对不对。
 
这两者是一样的,如果抛开其实现方式。粒度不是这个意思,是指单独对象的划分,而不是指一个功能模块的大小。C++各个对象之间的调用和COM没有多大的差别,都是产生对象、使用对象,销毁对象,只是COM对象和操作系统的联系紧密的多,需要考虑的关于计算机的东西要多些,调用的函数名称与C++不一样,其他没有什么不一样。
 
后退
顶部