面向对象编程的弊端是什么?

2020-03-24 11:11发布

当前很多资料都在讲述面向对象的优点,可是在软件开发或者大型软件项目中,面向对象却带来了巨大的类关系设计开销,但具体有何弊端却没有详尽的介绍。

当前很多资料都在讲述面向对象的优点,可是在软件开发或者大型软件项目中,面向对象却带来了巨大的类关系设计开销,但具体有何弊端却没有详尽的介绍。

3条回答
小橘子
2021-09-16 10:11

1.性能损失.面向对象编程达到了软件工程的三个主要目标:重用性、灵活性和扩展性,相对的为了实现相应的目标, 就会有一定的性能损失,如果程序进行超大规模计算,则性能损失就比较明显;

2.对数学运算等对象化很弱的编程不适用;

总之,要根据情况,选择合适的编程范式,没有万能的东西.


回答: 2021-09-16 10:11

面向对象原本要解决什么(或者说有什么优良特性)
似乎很简单,但实际又很不简单:面向对象三要素封装、继承、多态


(警告:事实上,从业界如此总结出这面向对象三要素的一刹那开始,就已经开始犯错了!)。


封装:封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。


有了封装,就可以明确区分内外,使得类实现者可以修改封装内的东西而不影响外部调用者;而外部调用者也可以知道自己不可以碰哪里。这就提供一个良好的合作基础——或者说,只要接口这个基础约定不变,则代码改变不足为虑。


继承+多态:继承和多态必须一起说。一旦割裂,就说明理解上已经误入歧途了。

一周热门 更多>