1. 程式人生 > 實用技巧 >12 面向物件與面向過程的區別(初窺)

12 面向物件與面向過程的區別(初窺)

12 面向物件與面向過程的區別(初窺)

前提

完成一件事情通常由很多步驟

面向物件

把某些步驟裡面共同的行為抽象出一個類,每次需要使用這個行為的時候就直接呼叫這個類好了.

面向過程

按照事情的步驟用函式寫出來,然後一步步的按照先後順序實現,最後使用的時候依次呼叫就行.

舉例說明

1.完成一個程式設計題目,需要經過以下步驟:

第一步:看題目
第二步:思考
第三步:若思考時間大於30分鐘,進入迴圈環節,若小於30分鐘問題已經解決                             
第四步:詢問室友,若給答覆進入第二步,否則進入下一步
第五步:詢問同學A,若給答覆進入第二步,否則進入下一步
第六步:詢問同學B,若給答覆就進入第二步,否則進入下一步
..........
第n步:詢問老師,得到答覆,進入第二步

2.用面向過程實現

與1中步驟一致

3.用面向物件實現

從1的步驟可知,詢問題目的物件可以是室友、同學A、同學B.....老師
因為解答問題的人之間有相同的行為,都是為了回答問題,所以可以抽象一個解答者類,這個類來代表解答問題的人,
呼叫類中方法的不同(代表不同型別的問題解答者),若類中方法返回的結果是true,則進入第二步