TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Bad engineering properties of oo languages

1 点作者 chemcoder超过 12 年前

1 comment

yxhuvud超过 12 年前
This article would have needed to define what it mean by object orientation, and then derive comparisons out of that.<p>As it stands, it derives conclusions out of nothing. Lets have a clarifying example:<p>"Object-oriented style is intrinsically less efficient that procedural style. In pure object-oriented style, every routine is supposed to be a (virtual) method. "<p>I'm pretty darn certain no definition of object orientation I've seen have included virtual methods as part of the definition.<p>And another: Polymorphic: "Economy of large-scale development. Data abstraction and modularization have methodological advantages for code development. Large teams of programmers can negotiate the interfaces to be implemented, and then proceed separately to implement the corresponding pieces of code. Dependencies between pieces of code are minimized, and code can be locally rearranged without fear of global effects. Polymorphism is important for reusing code modularly."<p>OO: "Economy of large-scale development. Teams of programmers are often involved in developing class libraries and specializing existing class libraries. Although reuse is a big win of object-oriented languages, it is also the case that these languages have extremely poor modularity properties with respect to class extension and modification. For example, it is easy to override a method that should not be overridden, or to reimplement a class in a way that causes problems in subclasses."<p>Because all know OO people can't talk each other and define APIs. Also, I can't recall anything in any definition of OO that doesn't allow for creating public interfaces or for that matter prohibiting subclassing of certain methods.<p>There are so many straw men in this article that it is downright silly.