單一職責(zé)原則:
Simple Responsibility Principle---RSP(優(yōu)化代碼的第一步)
定義:就一個(gè)類而言浴韭,應(yīng)該僅有一個(gè)引起它變化的原因砂竖。一個(gè)類中應(yīng)該是一組相關(guān)性很高的函數(shù),數(shù)據(jù)的封裝。
開閉原則:
Open Close Principle---OCP(讓程序更穩(wěn)定讨彼,更靈活)
定義:軟件中的對(duì)象(類鳄梅,模塊凌停,函數(shù)等)應(yīng)該對(duì)于擴(kuò)展是開放的醉拓,但是,對(duì)于修改是封閉的渣刷。
里氏替換原則:
Liskov Substitution Principle---LSP(構(gòu)建擴(kuò)展性更好的系統(tǒng))
定義:所有引用基類的地方必須能透明的使用其子類鹦肿。
依賴倒置原則:
Dependence Inversion Principle---DIP(讓項(xiàng)目擁有變化的能力)
定義:依賴倒置原則指代了一種特定的解耦形式,使得高層次的模塊不依賴于低層次的模塊的實(shí)現(xiàn)細(xì)節(jié)的目的辅柴。模塊間的依賴通過抽象發(fā)生箩溃,實(shí)現(xiàn)類之間不發(fā)生直接的依賴關(guān)系瞭吃,其依賴關(guān)系是通過接口或抽象類產(chǎn)生的,即面向接口編程或者面向抽象編程涣旨。
接口隔離原則:
InterfaceSegregation Principles---ISP(系統(tǒng)有更高的靈活性)
定義:類間的依賴關(guān)系應(yīng)該建立在最小的接口上歪架。接口隔離原則將非常龐大、臃腫的接口拆分成更小的更具體的接口霹陡,這樣客戶將會(huì)只需要知道他們感興趣的方法和蚪。
迪米特原則:
Law of Demoter---LOD(更好的可擴(kuò)展性)
定義:類一個(gè)對(duì)象應(yīng)該對(duì)其他對(duì)象有最少的了解。