SOLID原則
倡導(dǎo)者
Robert C. Martin,世界級(jí)編程大師,設(shè)計(jì)模式和敏捷開發(fā)先驅(qū),敏捷聯(lián)盟首任主席,C++ Report前主編。

S (Single Responsibility) 單一責(zé)任原則

設(shè)計(jì)的東西要盡量只有一個(gè)職責(zé)。因?yàn)槿绻瑫r(shí)負(fù)責(zé)多項(xiàng)職責(zé)的話,如果其中的一個(gè)職責(zé)變更了,可能會(huì)在自己沒有意識(shí)到的時(shí)候影響到了別的職責(zé)。
目的
防止在修正一個(gè)功能的時(shí)候影響到別的功能。

O (Open-Closed) 開放,關(guān)閉原則

當(dāng)需要對(duì)功能進(jìn)行增加的時(shí)候,不要通過修正現(xiàn)在的功能來實(shí)現(xiàn),而要通過增加新的方法等來實(shí)現(xiàn)。
目的
通過這樣可以最大限度的影響現(xiàn)有系統(tǒng)。

L?(Liskov Substitution) Liskov替換原則

子類一定要是可以替換父類的功能。
目的
父類和子類都能使用同一個(gè)方法,從而保持一致性。

I?(Interface Segregation) 接口分離原則

代碼中僅實(shí)現(xiàn)需要的功能,不畫蛇添足。
目的
功能最小化,且沒有以外的功能。

D?(Dependency Inversion) 依存反轉(zhuǎn)原則

當(dāng)兩個(gè)有調(diào)用關(guān)系的類,調(diào)用方和被調(diào)用方盡量通過接口定義,不要有太多的細(xì)節(jié)。
目的
消除類和類之間的耦合?!?/p>
標(biāo)簽:GO