看看名人大家是如何詆譭物件導向的

aqee發表於2013-02-22

  “物件導向程式設計是一個極其糟糕的主意,只有矽谷裡的人能幹出這種事情。” — Edsger Dijkstra(圖靈獎獲得者)

  “物件導向設計是用羅馬數字做計算。” — Rob Pike(Go語言之父)

  ““物件導向”這個詞包含很多意思。有一半是顯而易見的,而另一半是錯誤的。” — Paul Graham(美國網際網路界如日中天的教父級人物)

  “實現上的繼承就跟過度使用goto語句一樣,使程式擰巴和脆弱。結果就是,物件導向系統通常遭受複雜和缺乏複用的痛苦。” — John Ousterhout( Tcl and Tk 的創始人) Scripting, IEEE Computer, March 1998

  “90%的這些胡說八道都稱現在它很流行,非要往我的程式碼裡搓揉進物件導向的石粒。” — kfx

  “有時,優雅的實現只需要一個函式。不是一個方法。不是一個類,不是一個框架。只是一個方法。” — John Carmack(id Software的創始人、第一人稱射擊遊戲之父)

  “物件導向程式語言的問題在於,它總是附帶著所有它需要的隱含環境。你想要一個香蕉,但得到的卻是一個大猩猩拿著香蕉,而其還有整個叢林。” — Joe Armstrong(Erlang語言發明人)

  “我一度曾經迷戀上了物件導向程式設計。現在我發現自己更傾向於認為物件導向是一個陰謀,企圖毀掉我們的程式設計樂趣。” — Eric Allman(sendmail的創造者)

  物件導向是90年代“結構化程式設計”的萬金油,風靡一時,但很難說它就是那些用它開發出來的東西的“終極”程式設計模式。

  並且,至少它的這種最流行的形式可能我帶來極大的危害,極度的增加複雜性。

  繼承帶來的危害遠超過好處。這“程式碼複用”的令人質疑的幌子下,我們的環境中被愚蠢的增添了大量的毫無用處的複雜性,使得必須引入大量的語法上的簡寫來讓這混亂得到最低限度的管理。

  來自 索尼公司Tony Albrecht

  英文原文:Object Oriented Programming is Inherently Harmful

相關文章