面向過程
「面向過程」是一種以過程為中心的程式設計思想(我怎麼老覺得這是一句屁話!沒辦法,我們的教科書它就是這麼「高雅」!)。
「面向過程」也可稱之為「面向記錄」程式設計思想(這句話似乎具體了一步,但是還是不怎麼清楚。腫麼辦?再查資料唄!)。
我們知道計算機莫非就是對現實世界的模擬。那所謂的這種思想肯定可以對映或者說等價於現實中的具體情形。
哦,我知道了!面向過程即就是直接對某件事情整個發生的經過進行模擬的一種編碼方式。
很早的時候,我們寫作文都有記敘文,而記敘文有六個要素:時間,地點,人物,事情的起因,經過,結果。
面向過程就類似於記述事情。用程式語言「記述」現實中某件事情發生的整個過程,遵從語言規範同時達到可以最逼真的模擬實現過程。
有的好書上就把 早上起床 至 到學校 這個過程舉例如下:
(1)起床
(2)穿衣
(3)洗臉刷牙
(4)去學校
這四步就是一步一步的完成,且有一定的先後順序,整個流程進行記錄也就是所謂的一種過程程式設計方式。
物件導向
物件?什麼是物件?這個概念怎麼比上面更抽象?到底什麼是物件?我們說:「一切皆物件!」
開發編譯器的前輩在設計它的時候,就存在了內建型別(int,char,double等)。那麼,順著這個思路深入分析,歸納總結。
萬事萬物都可以分別歸類然後抽象為一種特定的資料型別,這也就是類的形成。
物件就是類的一種例項。所以反過來說一切都是物件。其實,比物件更抽象的是類。
乙個類就代表了一種資料型別,一種資料型別就蘊含著一種現實物件。
我們知道,類由屬性成員變數以及行為特徵函式組成。
屬性是對個體一種本質差異的抽象,函式是對同類所有個體一種具體行為的實現。
屬性是對物件個性的區別描述,函式是對物件共性的行為體現。
關於類與物件,圖示如下:
關於物件導向思想,圖示如下:
物件導向與面向過程
面向過程其實是最為實際的一種思考方式。物件導向的成員函式具體實現也是含有面向過程的思想,可以說面向過程是一種基礎方法。
同一問題,面向過程的思想觀察角度可以說縱向的,而物件導向的思想認識角度可以說是橫向的。前者是從點切入,後者由麵構建。
但是,其實我們都知道縱橫都是相對而言,沒有明確界限。
面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。
物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描述某個事物在整個解決問題的步驟中的行為。
乙個博大,乙個精深。可以這麼理解。
物件導向和面向過程的優缺點
參見隨筆《物件導向和面向過程的優缺點》
good good study, day day up.
順序 選擇 迴圈 總結
物件導向過程與物件導向
物件導向過程與物件導向 1 程式的發展經歷了兩個階段 面向過程 物件導向。2 對於物件導向與面向過程可以用乙個例子解釋,如乙個木匠要做乙個盒子,那麼這個盒子的出發點會有兩種方式 物件導向 先想好要做的盒子,之後在去找相應的工具去做。面向過程 不去想要做什麼樣的盒子,隨需取工具。物件導向三大特徵 封裝...
物件導向與面向過程
分析出解決問題所需要的步驟,然後用函式把步驟分解開,使用時再呼叫這些函式。面向過程強調流程化 線性化 步驟化的思考方式 把構成問題事務分解成各個物件,描述各個事務在問題中的行為。強調整體性和差異性。具有抽象 封裝,繼承,多型 面向過程效率高 流程明確,具體步驟清楚 但耗費精力,重用率低 擴充套件能力...
物件導向與面向過程
一 面向過程程式設計 面向過程程式設計是一種以過程為中心的程式設計思想,分析出解決問題的步驟,然後用函式把這些步驟一步一步實現。面向過程程式設計,資料和對資料的操作是分離的。二 物件導向程式設計 物件導向程式設計是將事物物件化,通過物件通訊來解決問題。物件導向程式設計,資料和對資料的操作是繫結在一起...