面向過程:
顧名思義,其中心意義在於「過程」二字,比如你要吃飯,那麼首先是要選地,播種,施肥,成熟,收穫,煮飯,然後才能吃飯,那麼面向過程就是從開始到結束,分析出解決問題的需要的每乙個步驟,然後用函式將這些步驟乙個乙個實現,使用的時候乙個乙個一次呼叫就行了。
物件導向:
同樣的,你去飯店吃飯的時候,只需要對服務員說一句你要吃飯就行了,你不需要關心飯是怎麼來的,這就是物件導向。那麼物件導向就是把組成問題事務分解成乙個個物件,建立物件不是為了解決乙個步驟,而是用來描述某個事務在解決問題步驟中的行為。物件導向是以功能來劃分問題,而不是步驟。
從書面上來說,可能面向過程更好理解,但是其實物件導向更符合人們的思考習慣。比如外面去商場買衣服,那麼商場的功能就是提供衣服,你不需要關心衣服是怎麼來的,你只需要向商場提出你要買衣服的要求就可以。
就那貪吃蛇這個遊戲而言,對於面向過程:1、吃乙個;2、繪製畫面;3判斷是否死亡,就這樣依次呼叫函式,乙個乙個步驟進行。
而物件導向,建立三個物件:1、蛇;2、畫面系統;3、規則系統。首先進行操作,然後將操作後的結果提交至畫面系統進行畫面繪製,繪製之後的結果提交至規則系統判斷是否死亡。這樣一招功能來劃分問題。
物件導向的功能劃分保證了物件導向的可擴充套件性。比如我需要為貪吃蛇重新改寫一套規則,在面向過程中,規則已經滲透到整個程式的各個角落,改寫不如重寫。那麼在物件導向中,則只需要重新設計規則系統即可。
物件導向和面向過程
面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。例如五子棋,面向過程的設計思路就是首先分析問題的步驟 1 開始遊...
物件導向和面向過程
物件導向和面向過程的區別 面向過程 更加關注整個程式的實現流程 物件導向 更加關注整個程式中有哪些類,每個類有哪些屬性,有哪些行為,它將整個功能劃分為許多小功能,分散到不同的類中,使用時,僅需命令相應的類完成相應的事情 物件導向的優勢 1.更高的容錯率 2.更易閱讀的 3.更易擴充套件 物件導向的劣...
面向過程和物件導向
什麼是物件導向?什麼又是面向過程呢?對於這兩大程式設計思想,一直貫穿在我們的學習和生活中。我們知道物件導向和面向過程,但是讓你真正說出來的時候,你也許就會發現,我真的不知道怎樣描述它。舉乙個簡單的例子,給你乙個任務,你要思考怎樣完成它?如果你的思維方式是 我先做什麼,再做什麼 這叫面向過程 我先做乙...