寫代碼和我們?nèi)粘I钕⑾⑾嚓P(guān)薄霜、好多理論码秉、邏輯來源于生活
1. 單一性原則 + MVC
MVC
View ——視圖
Model ——模型
Controller——控制器(邏輯層)
對于MVC模式我們并不陌生、所以也不用多說
但是做到真正的MVC并不是那么容易的事脆炎、一般情況下我們會不自主的增大Controller的代碼量惩琉、一些不相關(guān)的關(guān)于View的設(shè)置、數(shù)據(jù)的處理也會在Controller里面出現(xiàn)庐橙,最后導(dǎo)致Controller里面過于冗余、查看自己代碼時借嗽、不能夠一眼看出自己做了什么功能。
所以在這里我引出 單一性原則 + MVC
各個模塊各司其職转培、Controller里面應(yīng)當負責(zé)一些邏輯的處理恶导。model、view的相關(guān)東西盡量在自己的類里面進行處理浸须。這樣我們可以更清晰的知道我們都干了什么惨寿、在查找代碼時、我們也更容易找到其位置
2.封裝 + 隔離(AFNetWorking)
未隔離
已隔離
以上兩圖可以看出進行隔離的代碼的好處
3. 工廠模式(繼承+多態(tài))
在基類中定義創(chuàng)建對象的一個接口删窒,讓子類決定實例化哪個類裂垦。工廠方法讓一個類的實例化延遲到子類中進行。工廠方法要解決的問題是對象的創(chuàng)建時機肌索,它提供了一種擴展的策略蕉拢,很好地符合了開放封閉原則。工廠方法也叫做虛構(gòu)造器(Virtual Constructor)诚亚。
優(yōu)點
:極大地優(yōu)化了代碼晕换,如果需要100個子類對象,不用再一直調(diào)用alloc方法去創(chuàng)建站宗,而是直接通過其工廠類的一句代碼即可實現(xiàn)闸准,提高了對代碼的復(fù)用性。同時梢灭,也可以將大量的操作放到工廠類中去處理夷家,業(yè)務(wù)類中只負責(zé)去調(diào)用創(chuàng)建需要的對象即可。
缺點
:因為它的實現(xiàn)條件之一必須存在繼承關(guān)系敏释,所以模式中工廠類集中了所有的創(chuàng)建邏輯库快,形成一個龐大的全能類,當所有的類不是繼承自同一個父類的時候擴展比較困難颂暇。
參考:http://www.cnblogs.com/XYQ-208910/p/6216246.html