比特幣

面向對象的分裂


面向對象的分裂

伊利亞·蘇茲達尼茨基(Ilya Suzdalnitski)最近發表了“面向對象的程序設計 – 萬億美元的災難”。這種冗長的結論很大程度上指出了OOP的缺點。雖然我不一定同意他所說的一切,但我同意一件事:

OOP,如C ++,Java和C#等語言所教授和實踐,一直是一場災難。

這些語言將OOP視為應用抽像數據類型的一種方式,而不是Alan Kay所支持的基於消息的概念。

還有另一種方式來看待OOP:從Smalltalk的角度來看,這是在20世紀80年代和90年代推廣OOP的第一種語言。 (Simula是第一種介紹OOP概念的語言。)

要了解Smalltalk哲學的精髓,請觀看Alan Kay向Ted Nelson致敬的視頻片段(從2:17開始):

https://medium.com/media/cbda8c7512200e900518c7f2a3d2d839/href

更多見解來自Alan Kay的“The Small History of Smalltalk”(©1993 ACM):

Smalltalk是計算機本身概念的遞歸。而不是將“計算機內容”劃分為每個都不如整體的東西 – 如數據結構,過程和函數,這些是編程語言的常用設備 – 每個Smalltalk對像都是對計算機整個可能性的遞歸。因此,它的語義有點像成千上萬的計算機都被一個非常快速的網絡連接在一起。

Smalltalk的貢獻是一種新的設計範式 – 我稱之為面向對象 – 用於攻擊專業程序員的大問題,並為新手用戶提供小問題。面向對象的設計是一種成功的嘗試,可以定性地提高對矽爆炸所帶來的更複雜的動態系統和用戶關係進行建模的效率。

最重要的是:你所聽到的關於面向對象編程和繼承以及可伸縮性問題的所有抱怨都來自於使用C ++,Java,C#等。抽像數據類型理念對大規模軟件開發是不利的。

Alan Kay著名說:

實際上,我編寫了“面向對象”這個術語,我可以告訴你我沒有考慮到C ++。

https://medium.com/media/f17fe1a63c537c21a8c157350f80d9b0/href

(從10:00開始。)

艾倫凱說:“互聯網做得很好,以至於大多數人都認為它是像太平洋這樣的自然資源,而不是人為的東西。什麼是最後一次像這樣的規模的技術是如此沒有錯誤?

艾倫凱將他面向對象的文獻比作互聯網是如何建立的,或者是如何構建由數十億個細胞構成的生物有機體。 Smalltalk非常適合真正可擴展的解決方案。

就像Suzdalnitski先生欽佩Erlang一樣,在Alantalk的意義上,它不是一種面向對象的語言,就像Alan Kay所預期的那樣。我認為Smalltalk是歷史上唯一真正的,純粹的面向對象編程語言。它甚至沒有用於條件和迭代執行的內置語法,這兩者都是程序元素

面向對象的分裂

面向對象的分裂最初發佈在HackerNoon.com on Medium上,人們通過突出和回應這個故事來繼續對話。

資訊來源:由0x資訊編譯自BITCOININSIDER。版權歸作者Anonymous所有,未經許可,不得轉載


0X簡體中文版:

面向對象的分裂