面向過程與面向?qū)ο蟮膮^(qū)別(撲克牌)舉例

實驗?zāi)康?/h1>

通過制作撲克牌實例來比較面向?qū)ο蠛兔嫦蜻^程的區(qū)別,以及了解到面向?qū)ο蟮膬?yōu)點,下面我們將通過Java這門語言來體現(xiàn)二者的區(qū)別,并實現(xiàn)撲克牌實例。

撲克牌制作的要求

制作一副撲克牌要求接收兩張牌并比較他們的大小。

制作過程

面向過程

如果是面向過程的話,我的思維邏輯是比較混亂的,其實也很容易理清
1.首先制作一副撲克牌
2.在一副撲克牌中抽兩張牌
3.將兩張牌進行比較輸出結(jié)果
當然這些在面向過程中你是很難實現(xiàn)邏輯的清楚,就拿這次舉例在面向過程的撲克牌中你怎么將撲克牌的屬性都放在一起呢,他們怎么會有關(guān)聯(lián)呢,而且面向過程代碼會有很低的代碼復(fù)用率,你幾乎每實現(xiàn)一個代碼就會有一個方法,有些方法功能相同確只好再寫一遍。
概括的來說,面向過程很難體現(xiàn)出屬性之間的關(guān)聯(lián),代碼的復(fù)用率過低,導(dǎo)致代碼很冗雜
這是代碼塊

其實不用看 這個就是面向過程

屏幕截圖 2022-05-13 125401.png

屏幕截圖 2022-05-13 125520.png

屏幕截圖 2022-05-13 125631.png

面向?qū)ο?/h1>

1.先進行設(shè)計


屏幕截圖 2022-05-13 131619.png

進行一下解釋首先我們要有一副牌,一副牌又有很多張牌組成,一張牌有數(shù)字和花色(suit)而一張牌應(yīng)該具有和其他牌比較的方法即Compare,當然我們還要進行對一副牌的管理,比如發(fā)牌洗牌這里暫時沒有實現(xiàn)只是發(fā)給你兩張牌。所以這個manager是非常有必要的。
1.PokerNumber


屏幕截圖 2022-05-13 132110.png

2.PokerSuit
屏幕截圖 2022-05-13 132209.png

3.Poker


屏幕截圖 2022-05-13 132349.png

4.PokerManager
屏幕截圖 2022-05-13 132605.png

5.測試類
image.png

雖然看上去可能比面向過程更加的多但實際上他的封裝將各個屬性都很好的結(jié)合在了一起使它更加具有我們生活中的思想。這個文章主要讓你感受面向?qū)ο蠓庋b的思想。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容