描述:
在《COM本质论》一书中写到:
面向对象程序设计=多态性+(某些)迟绑定+(某些)封装性+继承
面向组件程序设计=多态性+(完全)迟绑定+(完全,也是强制性的)封装性+接口继承+二进制重用性
大家对面向对象的(某些)迟绑定和组件的(完全)迟绑定是怎么理解的?
解决方案1:
学习!
解决方案2: 就这句
>>面向对象程序设计=多态性+(某些)迟绑定+(某些)封装性+继承
>>面向组件程序设计=多态性+(完全)迟绑定+(完全,也是强制性的)封装性+接口继承+二进制重用
>>面向对象程序设计=多态性+(某些)迟绑定+(某些)封装性+继承
>>面向组件程序设计=多态性+(完全)迟绑定+(完全,也是强制性的)封装性+接口继承+二进制重用
同意xiaohyy(醉大饿极) ,另外我觉得他所谓组件是指一些已经过编译的二进制东东(windows下就是exe dll),所以和只存在于思想中的所谓面向对象有那些区别。所谓完全迟绑定,我觉得是指直到主程序运行CoCreateInstance那一刻,才绑定了。编译连接阶段并没有和任何东西绑定。而某些就是不一定是完全的意思。
>>大家对面向对象的(某些)迟绑定和组件的(完全)迟绑定是怎么理解的?
com规范强制客户通过接口访问组件,而com接口是纯虚函数,所以是“完全”迟绑定。
而在OO中,接口不一定都是纯虚函数,所以不一定是迟绑定。
com只是在OO的基础上添加了一些协议,在编写com组件时必须遵守这些协议,比如强制性的接口和实现分离。。
可以这么说 com是oo的一种升华。。。