我总觉得Component based和Object Oriented这两个概念太相似了,谁能告诉我这两种理念的本质区别有哪些吗? 或者推荐我一些阅读的文章。 我觉得要对某种思想理念有深刻的认识才能更好的运用技术,大家说对吧?

解决方案 »

  1.   

    基于组件的程序设计,比面对对象更深一层.
    地般来说,面向对象都是代码级的. 一个 C++的对象不能被 Delphi 来调用, 甚至, CBC 也不能调用 VC 的 C++ 对象.但组件是不一样的. 它是二进制级别的代码重用. 组件可以使用任何一种支持该技术的编程工具来产生,也可以被任何支持该技术的语言来调用. 也就是说,它是语言透明的. 为了让它跟语言无关我们通常通过接口来联系一个 组件和其调用者. IDL 语言正是用来描述这种接口的. 它跟任何语言无关(其实它跟C++语法很象,所以在C++里用,特别方便). 它可以被 任何 支持COM的语言识别.