六大原則:
1.單一職責(zé)原則
通俗的說父虑,即一個(gè)類只負(fù)責(zé)一項(xiàng)職責(zé)。
2里氏替換原則
子類對(duì)象可以直接賦值給基類對(duì)象 Person person=new Student();
3.依賴倒置原則
要面向接口編程碍现;
class Book? //書被讀的方法
(????? public string getcontent()
??? {return"很久很久以前"})
class Mother//媽媽讀書
(Book book=new Book();
book.getcontent();
)
上述代碼只實(shí)現(xiàn)了媽媽讀書的代碼
如果媽媽要讀雜志了,就要修改媽媽的代碼米奸,原因就是Mother與Book之間的耦合性太高了昼接,必須降低他們之間的耦合度才行。
我們引入一個(gè)抽象的接口IReader悴晰。讀物慢睡,只要是帶字的都屬于讀物:
4.接口隔離原則
設(shè)計(jì)接口的時(shí)候要精簡(jiǎn)單一
5.迪米特法則]
類與類之間降低耦合
6.開閉原則
訴我們要對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉铡溪。
當(dāng)軟件需要變化時(shí)漂辐,盡量通過擴(kuò)展軟件實(shí)體的行為來(lái)實(shí)現(xiàn)變化,而不是通過修改已有的代碼來(lái)實(shí)現(xiàn)變化棕硫。