基礎才是(shi)重(zhong)中(zhong)之重(zhong)~再說軟件設計的各大原則
下(xia)(xia)面(mian)將介紹(shao)以下(xia)(xia)幾個原則,都是軟件(jian)設計里的大(da)(da)哥(ge)大(da)(da),大(da)(da)姐大(da)(da)級別(bie)的人物!
- DRY
- KISS
- SRP
- OCP
- LSP
- ISP
- DIP
- SOC
- YANGI
DRY
DRY是Do Not Repeat Yourself的簡(jian)稱,不要寫重復的代(dai)碼,可以使(shi)用代(dai)碼重構(gou)里的提取到方法,提取到類來做這事(shi)
KISS
KISS 是(shi)Keep it short and simple 的簡(jian)稱(cheng)。意思(si)是(shi)在設計時保(bao)持簡(jian)約
SRP
SRP 是Single responsibility的(de)簡稱,單(dan)一(yi)(yi)職責(ze)原(yuan)則,簡單(dan)說(shuo)就是 一(yi)(yi)個類或者(zhe)模塊只(zhi)能(neng)(neng)負(fu)責(ze)一(yi)(yi)個功(gong)能(neng)(neng)
OCP
OCP是(shi) Open/closed principle的簡稱(cheng),開(kai)閉原則,對(dui)修(xiu)改關閉,對(dui)擴(kuo)展開(kai)放
LSP
LSP是 The Liskov Substitution Principle的簡稱,里氏(shi)代換(huan)原(yuan)則,子類(lei)可以實現基(ji)類(lei)全(quan)部的功能(neng)
ISP
ISP是(shi)Interface segregation principle 的(de)簡稱(cheng),接(jie)口(kou)隔(ge)離原則,接(jie)口(kou)要做(zuo)個最小粒度(du)化,不提供做(zuo)超級大接(jie)口(kou)
DIP
DIP是Dependency inversion principle的(de)簡稱,依(yi)賴反轉原(yuan)則,一個方法應該依(yi)賴于抽象,而不是具(ju)體的(de)實現(xian),像我(wo)們的(de)IOC容(rong)器(qi)就是一種DIP原(yuan)則的(de)體現(xian)
SOC
SOC是(shi) Separation of concerns的簡稱,關(guan)注(zhu)點分離(li),將一些公用(yong)的功能進行分離(li),而不是(shi)耦合在一起,像我們的AOP面向切(qie)面編程就是(shi)一種SOC的體(ti)現(xian)
YANGI
YANGI是You aren’t gonna need it 的簡稱,永久不(bu)要為某個假設(she)去多寫功能代(dai)碼;用到了它,再(zai)去實現它。
以上是(shi)自己整理(li)和理(li)解寫了一些話,希望對(dui)各位有(you)所(suo)幫助(zhu)!
設計原則就是江湖人物(wu)在(zai)修(xiu)理內功,只有拳腳,沒有內功,請問,這(zhe)個大俠能是高手嗎?
感謝各位的閱讀!