1. 掌握設(shè)計(jì)模式的層次
- 第1層:剛開始學(xué)編程不久垄懂,聽說過什么是設(shè)計(jì)模式
- 第2層:有很長時(shí)間的編程經(jīng)驗(yàn)虚汛,自己寫了很多代碼围来,其中用到了設(shè)計(jì)模式跺涤,但是自己卻不知道
- 第3層:學(xué)習(xí)過了設(shè)計(jì)模式,發(fā)現(xiàn)自己已經(jīng)在使用了监透,并且發(fā)現(xiàn)了一些新的模式挺好用的
- 第4層:閱讀了很多別人寫的源碼和框架桶错,在其中看到別人設(shè)計(jì)模式,并且能夠領(lǐng)會設(shè)計(jì)模式的精妙和帶來的好處
- 第5層:代碼寫著寫著,自己都沒有意識到使用了設(shè)計(jì)模式胀蛮,并且練的寫了出來
2. 介紹
- 設(shè)計(jì)模式是程序員在面對同類軟件工程設(shè)計(jì)問題所總結(jié)出來的的有用的經(jīng)驗(yàn)院刁,模式不是代碼,而是某類問題的通用解決方案粪狼,設(shè)計(jì)模式(Design pattern)代表了最佳的實(shí)踐退腥。這些解決方案是眾多軟件開發(fā)人員經(jīng)過相當(dāng)長的一段時(shí)間的試驗(yàn)和錯(cuò)誤總結(jié)出來的
- 設(shè)計(jì)模式的本質(zhì)提高軟件的維護(hù)性,通用性和擴(kuò)展性再榄,并降低軟件的復(fù)雜度
- 設(shè)計(jì)模式并不局限于某種語言狡刘,java、php不跟、c++都有設(shè)計(jì)模式
3. 類型
- 設(shè)計(jì)模式分為三種類型颓帝,共23種
- 創(chuàng)建型模式:單例模式、抽象工廠模式、原型模式购城、建造者模式吕座、工廠模式
- 結(jié)構(gòu)型模式:適配器模式、橋接模式瘪板、裝飾模式吴趴、組合模式、外觀模式侮攀、享元模式锣枝、代理模式
- 行為型模式:模版方法模式、命令模式兰英、訪問者模式撇叁、迭代表器模式、觀察者模式畦贸、中介者模式陨闹、備忘錄模式、解釋器模式(Interpreter模式)薄坏、狀態(tài)模式趋厉、策略模式、職責(zé)鏈模式(責(zé)任鏈模式)