本文記錄一些有關(guān)面向?qū)ο蟆⒃O(shè)計模式等相關(guān)內(nèi)容的筆記,供自己或他人于編程過程中作參考。并較詳細(xì)介紹了簡單工廠模式(雖然并不屬于23種設(shè)計模式)
1. 代碼命名需要規(guī)范河闰;
2. 注意非法輸入科平、報異常等情況;
3. 面向?qū)ο蟮膬?yōu)點(diǎn):可維護(hù)姜性、可復(fù)用瞪慧、可擴(kuò)展、靈活性好部念,可以用活字印刷相對刻板印刷的優(yōu)勢來加深理解弃酌。
4. 面向?qū)ο蟮娜蠡咎卣鳎悍庋b、繼承儡炼、多態(tài)妓湘;五大基本原則:單一職責(zé)原則、開放-封閉原則乌询、依賴倒轉(zhuǎn)原則榜贴、里氏替換原則、接口分離原則(迪米特法則)
5. 降低耦合度妹田,例如可以使用封裝讓業(yè)務(wù)邏輯與界面邏輯分離唬党,同時業(yè)務(wù)邏輯也可以被其他應(yīng)用所復(fù)用
6. 假設(shè)有一個Operation運(yùn)算類,需要增加開根號運(yùn)算鬼佣,可以在switch中增加一個分支初嘹,但是這種做法會把原來已經(jīng)運(yùn)行良好的運(yùn)算功能代碼暴露出來,這樣會造成不良影響沮趣。比較好的做法是把加減乘除等運(yùn)算分離(使用繼承和多態(tài)的方法)
7. 簡單工廠模式
簡單工廠模式最大的優(yōu)點(diǎn)是工廠類包含了必要的邏輯判斷,根據(jù)客戶端的選擇條件動態(tài)地實(shí)例化相關(guān)的類坷随。對于客戶端來說房铭,去除了與具體產(chǎn)品的依賴。但問題也就出現(xiàn)在這兒温眉,增加一個功能需要在工廠類中加case分支條件缸匪,這意味著不但對擴(kuò)展開放了,也對修改開放了类溢,違背了開放-封閉原則凌蔬。如圖1-1所示為簡單工廠模式的UML類圖。
8. 待補(bǔ)充...