12 面向物件與面向過程的區別(初窺)
阿新 • • 發佈:2020-11-28
12 面向物件與面向過程的區別(初窺)
前提
完成一件事情通常由很多步驟
面向物件
把某些步驟裡面共同的行為抽象出一個類,每次需要使用這個行為的時候就直接呼叫這個類好了.
面向過程
按照事情的步驟用函式寫出來,然後一步步的按照先後順序實現,最後使用的時候依次呼叫就行.
舉例說明
1.完成一個程式設計題目,需要經過以下步驟:
第一步:看題目 第二步:思考 第三步:若思考時間大於30分鐘,進入迴圈環節,若小於30分鐘問題已經解決 第四步:詢問室友,若給答覆進入第二步,否則進入下一步 第五步:詢問同學A,若給答覆進入第二步,否則進入下一步 第六步:詢問同學B,若給答覆就進入第二步,否則進入下一步 .......... 第n步:詢問老師,得到答覆,進入第二步
2.用面向過程實現
與1中步驟一致
3.用面向物件實現
從1的步驟可知,詢問題目的物件可以是室友、同學A、同學B.....老師
因為解答問題的人之間有相同的行為,都是為了回答問題,所以可以抽象一個解答者類,這個類來代表解答問題的人,
呼叫類中方法的不同(代表不同型別的問題解答者),若類中方法返回的結果是true,則進入第二步