一、單一功能(single responsibility)
單一功能原則,也叫單一職責原則,簡單來說,就是一個類應該只有一個引起它變化的原因,其中心思想就是面向物件設計原則中的高內聚,低耦合,當分析有一個以上的原因引起某個類的需要修改,就應該盡量根據引發類修改的原因將該類拆分為多個類,
二、開閉原則(open/closed)
對擴展開放,對變化閉合,開閉原則指導的是對于已經完成測驗并上線的類,如果需求發生變化,應該通過其他方法去擴展其功能而不是在原有功能類上進行修改,對于很多大型軟體的向下兼容其實就是遵守了這個原則,
三、里氏替換(Liskovsubsititution)
里氏替換,也叫里氏代換,有一種描述是任何應用父類的地方都可以用子類替換,其本質是指在繼承關系中子類可以擴展父類的方法,但不應修改父類的方法,在面向物件開發語言中,通過特定關鍵字,子類可以重寫使得方法在子類呼叫中表現出特定的邏輯,這就違背了里氏替換,里氏替換其實就是開閉原則的一個應用場景,
四、介面隔離(interface segregation)
在設計上應將介面盡量拆分,使得客戶端呼叫介面類時,類中只包含客戶感興趣的介面,
五、依賴反轉(dependency inversion)
也叫依賴倒置,高層模塊不應該依賴低層模塊,兩者都應該依賴其抽象;抽象不應該依賴細節,細節應該依賴抽象,通俗的將就是面向介面編程,
六、迪米特法則(Law of Demeter,LoD)(補充)
也叫最少知識原則(Least Knowledge Principle,LKP),如果兩個物體無須直接通信,則不要直接通信,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/256295.html
標籤:其他
