什麼是物件導向?為什麼要用物件導向程式設計?

2021-08-15 01:09:32 字數 756 閱讀 4980

第一次看到這個標題,我迷茫了。大多數人追溯學習程式設計的經歷,試圖查詢為什麼要用物件導向程式設計?最後答案也只能是「因為大學老師教的...」、「因為工作上遇到...」等等之類的。

在機緣巧合的情況下,我發現了一本書《大話設計模式》。作者應用極其通俗易懂案例解答了上面的問題。

話說三國時期,曹操帶領百萬大軍攻打東吳,大軍在長江赤壁駐紮,軍船連成一片。眼看就要滅了東吳,統一天下,曹操大悅,於是大宴眾文武。在酒席間,曹操詩性大發,不覺吟道:"喝酒唱歌,人生真爽..."。眾文武齊呼:」丞相好詩!「於是命印刷工匠刻版印刷,以便流傳天下。

版樣給曹操一看,曹操感覺不妥,說道」喝與唱,此話過俗,應改為『對酒當歌』較好!「,於是命工匠重新雕刻。那時候,還沒發明活字印刷術,如果樣板要改,只能重頭雕刻。工匠眼看連夜刻版之工,徹底白費,心中叫苦不迭。只得照辦。

版樣再次出來請曹操過目,曹操細細一品,覺得還是不好,說」人生真爽太過直接,應該改問語才夠意境,因此應改為『對酒當歌,人生幾何?』「,於是....

在活字印刷術還沒出現之前,如果版樣有改動,只能重新雕刻。而且在印刷完成後,這個樣板就失去了它的價值,如果需要其他樣板只能重新雕刻。而活字印刷術的出現就大大改善了印刷技術。如上例」喝酒唱歌,人生真爽「,如果用活字印刷,只需要改四個字就可,其餘工作都未白做。豈不快哉!!

活字印刷也反應了oop。當要改動時,只需要改要改的地方,此為 可維護;當這些字用完後,並非就完全沒有價值了,它完全可以在後來的印刷中重複使用,此乃 可復用;次詩若要加字,只需另刻字加入即可,這就是  可擴充套件;字的排列可以橫排,也可以豎排,此是   靈活性好。

什麼是物件,為什麼要物件導向,怎麼才能物件導向?

一 物件導向,這個物件到底是什麼?這個物件不是c 中的例項,c 中我們把乙個類的例項也叫做物件,這種物件嚴格的說應該是物件導向的程式設計實現 oop 中的物件,物件導向程式設計,也不是面向類的例項程式設計。物件的定義是人們要進行研究的任何事物,從最簡單的整數到複雜的飛機等均可看作物件,它不僅能表示具...

什麼是物件,為什麼要物件導向,怎麼才能物件導向?

一 物件導向,這個物件到底是什麼?這個物件不是c 中的例項,c 中我們把乙個類的例項也叫做物件,這種物件嚴格的說應該是物件導向的程式設計實現 oop 中的物件,物件導向程式設計,也不是面向類的例項程式設計。物件的定義是人們要進行研究的任何事物,從最簡單的整數到複雜的飛機等均可看作物件,它不僅能表示具...

什麼是物件,為什麼要物件導向,怎麼才能物件導向?

一 物件導向,這個物件到底是什麼?這個物件不是c 中的例項,c 中我們把乙個類的例項也叫做物件,這種物件嚴格的說應該是物件導向的程式設計實現 oop 中的物件,物件導向程式設計,也不是面 向類的例項程式設計。物件的定義是人們要進行研究的任何事物,從最簡單的整數到複雜的飛機等均可看作物件,它不僅能表示...