喬幫主告訴你什麼是物件導向

2021-07-15 05:19:09 字數 978 閱讀 1636

對於物件導向程式設計(oop)這個概念,至今為止我還未見過有人能比

賈伯斯詮釋得更加透徹。賈伯斯從來沒有接受過正式的工程訓練,但是他對於自己所做的和所說的都有非常清晰的思路,無論是技術、設計還是藝術。 

早在2023年,rolling stone對賈伯斯有乙個採訪。在那個年代,物件導向仍然是乙個很潮的概念,能夠理解並付出實踐的人並不多,而賈伯斯卻給公眾定義了什麼是物件導向。 

jeff goodell: 

請你用盡量簡練的語言解釋一下,究竟什麼是物件導向的軟體? 

賈伯斯: 

物件就像人一樣,也是活生生的生命。 

他們有知識,知道怎麼完成任務;他們有記憶,可以把發生的事情記下來。你和他們不在低層次上互動,而是像我們現在的對話一樣,在乙個高度抽象的層面上互動。 

我舉個例子來說明。 

如果我是你的「洗衣」物件,你可以把髒衣服給我,然後告訴我說:「請幫我把這些衣服洗了吧!」。 

//乙個物件呼叫另乙個物件,「洗衣」物件對外提供乙個洗衣方法

而我恰好知道舊金山最好的洗衣房在哪,並且我會說英語,兜裡也有美元。於是我出門打了一輛計程車,告訴司機帶我去位於舊金山的洗衣房。我到了那裡洗好衣服之後,又坐車回到這裡。我把洗好的衣服交還給你,說:「你的衣服已經洗好了。」。 

//「洗衣」物件中洗衣方法的實現過程

你並不知道我是怎麼做到的。你不知道**有洗衣店,也可能只會說法語,或者是兜裡沒錢,連車都打不了。但是我知道怎麼完成這項任務,而你不需要知道任何細節。 

//「洗衣」物件中洗衣方法的實現並不對外暴露,外界並不知道、或者說並不需要知道它的具體實現

所有的這些複雜流程都隱藏在我的內部,而我們之間可以高度抽象地互動,這就是物件。他們把複雜過程封裝在內部,而對外呈現的介面是高層次的,抽象的。

所謂物件導向,就是將功能、屬性高度封裝在某個物件中,對外的暴露永遠是最簡單最抽象的

喬幫主告訴你什麼是物件導向

對於物件導向程式設計 oop 這個概念,至今為止我還未見過有人能比賈伯斯詮釋得更加透徹。賈伯斯從來沒有接受過正式的工程訓練,但是他對於自己所做的和所說的都有非常清晰的思路,無論是技術 設計還是藝術。早在1994年,rolling stone對賈伯斯有乙個採訪。在那個年代,物件導向仍然是乙個很潮的概念...

雖然不想承認,喬幫主你是對的

從這個宕機的問題,我想起了flex,不知道大家有沒有使用flex開發大型的應用,會不會也出現我在使用flex大型應用宕機的情況。不得不說的是flex的確很方便,而且,不用考慮多瀏覽器的問題,有乙個很方便的整合開發環境。可是,不會也出現這種搞一搞就宕機,或情能太差的問題吧。從flex我又想到了html...

賈伯斯告訴你 什麼是物件導向程式設計

面的這段話摘自 1994 年 rolling stone 對賈伯斯的採訪,賈伯斯解釋了什麼是物件導向程式設計。jeff goodell 請你用盡量簡練的語言解釋一下,究竟什麼是物件導向的軟體?賈伯斯 物件就像人一樣,也是活生生的生命。他們有知識,知道怎麼完成任務 他們有記憶,可以把發生的事情記下來。...