以前知道好多模式,但是從來(lái)沒(méi)有詳細(xì)的學(xué)習(xí)一下。 這一段辭職回家又時(shí)間了。 就想照著模式把以前的東西捋一捋
先緊記第一點(diǎn)面向?qū)ο缶幊?,面向?qū)ο?。大家都知道。但是剩下的呢?我舉個(gè)例子,比如寫(xiě)一個(gè)考試的類(lèi),然后大家寫(xiě)一個(gè)考試類(lèi) 就開(kāi)始實(shí)例化,然后開(kāi)始寫(xiě),這其實(shí)是不對(duì)的。 現(xiàn)在大家就要開(kāi)始有這么一個(gè)觀念。 面向?qū)ο蟆N覀兙鸵獙?xiě)接口,或者抽象類(lèi)。 然后再去繼承或者實(shí)現(xiàn)。從而后續(xù)操作的才有用到的地方,說(shuō)白了就是把每個(gè)對(duì)象共有的屬性或者行為方法抽象出來(lái)。
然后我們用的時(shí)候 必須遵從的原則
<p>
- 單一原則
一個(gè)類(lèi)只應(yīng)該有一個(gè)屬性應(yīng)道這個(gè)類(lèi)的變化。 - 開(kāi)放封閉原則
很簡(jiǎn)單了,我們寫(xiě)的類(lèi)也好 方法也好。當(dāng)以后需要擴(kuò)展功能的時(shí)候,應(yīng)該添加就能滿足需求而不是修改 - 依賴倒轉(zhuǎn)原則
很重要 說(shuō)三遍抽象不應(yīng)該依賴細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴抽象
抽象不應(yīng)該依賴細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴抽象
抽象不應(yīng)該依賴細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴抽象
- 里氏代換原則
子類(lèi)型必須能夠替換掉他們的父類(lèi)型, - 迪米特原則
設(shè)計(jì)模式分為三類(lèi)
創(chuàng)建型模式
結(jié)構(gòu)型模式
行為型模式
<p>
創(chuàng)建型模型
抽象工廠和工廠都是先根據(jù)產(chǎn)品 產(chǎn)生的產(chǎn)品工廠。產(chǎn)品工廠返回至都是產(chǎn)品, 利用到的多態(tài)
建造者 先有產(chǎn)品product 然后抽象這個(gè)對(duì)象創(chuàng)建builder,在builder返回這個(gè)對(duì)象,然后Dicetor 中因?yàn)閎uilder達(dá)到通過(guò)指導(dǎo)者控制builder的效果。 并且返回對(duì)象是通過(guò)builer的具體builder對(duì)象的方法來(lái)創(chuàng)建的。