我有相当深厚的 OO 背景,OOD 和 OOP 的好处对我来说是第二天性,但最近我发现自己在一家与过程编程习惯相关的开发商店。实现语言具有一些 OOP 功能,但它们没有以最佳方式使用。
更新:每个人似乎对这个话题都有自己的看法,我也是如此,但问题是:
是否有任何好的比较研究来对比使用过程编程语言与面向对象语言的软件开发成本?
一些评论者指出试图将苹果与橙子进行比较的可疑性质,我同意准确测量非常困难,但也许并非完全不可能。
所有这些问题中的大多数都因个体程序员的生产力存在一个数量级或更多的差异而令人困惑。如果你碰巧有一个 OO 程序员,他是生产力 x 组中的一员,还有一个“过程式”程序员,他是 10x 程序员,那么即使 OO 在某种意义上更快,过程式程序员也有可能获胜。
还有一个问题是,在实际项目中,编码效率通常只占总工作量的 10-20%,因此更高的效率并没有太大影响;即使是假设的 10 倍程序员,或者无限快的程序员,也无法将总体工作量减少超过 10-20%。
你可以看看 Fred Brooks 的论文“没有银弹” http://en.wikipedia.org/wiki/No_Silver_Bullet.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)