首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >OOP的意义何在?

OOP的意义何在?
EN

Stack Overflow用户
提问于 2008-08-23 14:40:29
回答 25查看 29.2K关注 0票数 126

据我所知,尽管在OOP教育、语言和工具上花费了无数百万或数十亿,但OOP并没有提高开发人员的生产力或软件可靠性,也没有降低开发成本。很少有人严格意义上使用OOP (很少有人坚持或理解诸如LSP之类的原则);人们建模问题域的方法似乎几乎没有一致性或一致性。通常,该类只是用作语法糖;它将记录类型的函数放入它们自己的小名称空间中。

我已经为各种各样的应用程序编写了大量代码。尽管有一些地方,真正的可替换子类型在应用程序中发挥了有价值的作用,但这些都是非常例外的。一般而言,尽管人们口口声声谈论“重用”,但事实是,除非一段代码能做你想要它做的事情,否则几乎没有什么划算的“重用”。以正确的方式设计可扩展的类是非常困难的,因此扩展的成本通常如此之高,以至于“重用”是不值得的。

在许多方面,这并不让我感到惊讶。现实世界不是"OO",OO中隐含的想法--我们可以用某种类别分类对事物进行建模--对我来说似乎有非常根本的缺陷(我可以坐在桌子上、树桩上、汽车引擎盖上、别人的膝上--但这些都不是--椅子)。即使我们转移到更抽象的领域,OO建模通常也是困难的、违反直觉的,并且最终是没有帮助的(考虑圆/椭圆或正方形/矩形的经典示例)。

那么我在这里错过了什么呢?OOP的价值在哪里,为什么所有的时间和金钱都没有让软件变得更好?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档