名家吐槽 物件導向程式設計從骨子裡就有問題

2022-05-22 01:00:09 字數 1249 閱讀 7862

僅供娛樂。

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

「物件導向程式設計是乙個極其糟糕的主意,只有矽谷裡的人能幹出這種事情。」— 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年代「結構化程式設計」的萬金油,風靡一時,但很難說它就是那些用它開發出來的東西的「終極」程式設計模式。

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

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

luca cardelli:物件導向語言中糟糕的技術特質.

joe armstrong:為什麼物件導向討厭.

物件導向程式設計中的缺陷

– 來自 索尼公司tony albrecht

英文原文:object oriented programming is inherently harmful

吐槽 程式語言設計哲學

寫這篇文章的起意是看一位博主寫的年終總結,談到他學習go語言及其程式設計哲學。這讓我突然意識到,最近一直覺得自己寫python寫的很不舒服,總覺得這門語言有很多弊病。現在看來,是因為我忘了這門語言的設計哲學了。python本身就是以優雅著稱,本來就是要易看易讀。儘管這門語言被用於很多領域,但這也是因...

網路程式設計課設吐槽記錄

運用子執行緒來實現全雙工通訊 service端 void sendinfo socket sockconn if strcmp gets s s,50 quit 0 sprintf s sendbuf,s send sockconn,sendbuf,strlen sendbuf 1 0 傳送訊息 清...

吐槽程式設計問題的五張漫畫

大家可能知道,我時常活躍於stack overflow 當今最熱門的程式設計師問答 該 的好同志們公開了他們的資料,任何人都可以通過這個頁面查詢他們的資料庫 data.stackexchange.com 那裡的很多問題和回答都配上了xkcd 由randall munroe 創作 的漫畫鏈結,於是我決...