《架构整洁之道》摘录 – 5
第 5 章 – 面向对象编程
C++ 作为一种面向对象编程语言,反而破坏了 C 的完美封装性。(C++ 编译器要求类的成员变量必须在该类的头文件中声明。)
面向对象编程在继承性方面并没有开创出新,但是的确在数据结构的伪装性上提供了相当程度便利。
多态其实不过就是函数指针的一种应用。面向对象编程语言虽然在多态上并没有理论创新,但它们也确实让多态变得更安全、更便于使用了。
面向对象编程到底是什么?对一个软件架构师来说,其含义应该是非常明确的:面向对象编程就是以多态为手段来对源代码中的依赖关系进行控制的能力,这种能力让软件架构师可以构建出某种插件式架构,让高层策略性组件与底层实现性组件相分离,底层组件可以被编译成插件,实现独立于高层组件的开发和部署。