設計模式是五大或六大還是七大原則?

設計模式是五大或六大還是七大原則?

設計模式有五大原則或七大原則之分
按五大原則劃分:1、2、3和4(算一種)、5和6(算一種)、7
按六大原則劃分:1、2、3、4、5和6(算一種)、7
按七大原則劃分:1、2、3、4、5、6、7

1.單一職責原則(Single Responsibility Principle,SRP):類的職責要單一,不能將太多的職責放在一個類中。(高內聚、低耦合)

2.開閉原則( Open - ClosedPrinciple ,OCP ):對擴展開放,對修改關閉(設計模式的核心原則是)

3.依賴倒轉原則( Dependence Inversion Principle ,DIP ):要依賴抽象,而不要依賴具體的實現.

4.里氏代換原則( Liskov Substitution Principle ,LSP ):任何基類可以出現的地方,子類也可以出現

5.迪米特法則(Law of Demeter,LoD:系統中的類,儘量不要與其他類互相作用,減少類之間的耦合度
定義:又叫最少知識原則(Least Knowledge Principle或簡寫爲LKP)幾種形式定義:
(1) 不要和“陌生人”說話。英文定義爲:Don’t talk to strangers.
(2) 只與你的直接朋友通信。英文定義爲:Talk only to your immediatefriends.

6.接口隔離法則(Interface Segregation Principle,ISL):客戶端不應該依賴那些它不需要的接口。(這個法則與迪米特法則是相通的)

7 .合成/聚合複用原則(Composite/Aggregate ReusePrinciple ,CARP):要儘量使用對象組合,而不是繼承關係達到軟件複用的目的

其中合成/聚合複用原則又可以細分爲二種
聚合(Aggregation) 關係是關聯關係的一種,是弱的關聯關係。比如樂隊(主唱,吉他手,貝斯手)
組合(Composition) 關係是關聯關係的一種,是強的關聯關係。比如每名樂手(靈魂、身體)

版權所有,轉載請註明文章出處 http://blog/csdn.net/cadenzasolo

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章