-
開閉原則【OPEN CLOSE PRINCIPLE】:
類、模塊和函數(shù)等應(yīng)該對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉(即:擴(kuò)展時(shí)不修改原有代碼) -
里氏替換原則【LISKOV SUBSTITUTION PRINCIPLE】:
繼承與派生的規(guī)則(即:任何基類可以出現(xiàn)的位置,子類均可以出現(xiàn)) -
依賴倒置原則【DEPENDENCE INVERSION PRINCIPLE】:
依賴抽象而不依賴具體(即:針對(duì)接口編程,不要針對(duì)實(shí)現(xiàn)編程) -
接口隔離原則【INTERFACE SEGREGATION PRINCIPLE】:
建立單一接口,不要建立龐大臃腫的接口,盡量細(xì)化接口,接口中的方法盡量少(降低耦合度,使用多個(gè)隔離接口比單一接口要好) -
迪米特法則【LAW OF DEMETER】:
(最少知道原則)低耦合,高內(nèi)聚(一個(gè)實(shí)體應(yīng)盡量少與其他實(shí)體發(fā)生相互作用,相對(duì)獨(dú)立) -
組合/聚合復(fù)用原則【Composition/Aggregation Reuse Principle(CARP) 】:
盡量使用組合和聚合少使用繼承的關(guān)系來達(dá)到復(fù)用的原則
+1. 單一職責(zé)原則【SINGLE RESPONSIBILITY PRINCIPLE】:
一個(gè)類負(fù)責(zé)一項(xiàng)職責(zé)