【設計模式】——原則

原則是一些準則,這些準則有益於我們在該領域的發展。許多領域都有原則,比如我們踢足球快攻時,最好用腳而不是用頭顛着球快攻,雖然這不犯規;籃球方面呢,組織一次進攻時,最好由後衛發起;韓劇呢,他們的原則是車禍、有錢、治不了。這些原則是前人經過長期的探索總結出來的,它們能幫助我們在更簡單,效率更高的完成想要達成的目標。但是原則相對經驗來說更嚴肅,它強調如果你不這麼做,可能會面臨很麻煩的後果。

設計模式中的幾大原則也是如此,是面向對象設計思想的高度概括。它們分別是單一職責原則、開放-封閉原則、依賴倒轉原則、里氏代換原則、迪米特原則。


單一職責原則

就一個類而言,應該僅有一個引起它變化的原因。就是一個類最好只有一個職責,一個類如果承擔的職責過多,就等於把這些職責耦合在一起,一個職責的變化可能會削弱或者抑制這個類完成其他職責的能力。這種耦合會導致脆弱的設計,當變化發生時,設計會遭受到意想不到的破壞。

開放-封閉原則

是說軟件實體(類、模塊、函數等等)應該可以擴展,但是不可修改。就是對於擴展是開放的,對於修改是封閉的。但是修改是不可避免的,我們可以猜測出最有可能發生的變化種類,然後構造抽象來隔離那些變化。這樣可以是程序可維護、可擴展、可複用、靈活性好。

依賴倒轉原則

1.高策模塊不應該依賴底層模塊。兩個都應該依賴抽象。 2. 抽象不應該依賴細節。細節應該依賴抽象。總的來說就是降低底層和高層的耦合性,不管你是底層高層,都是可替換的,不是一損俱損的關係。要注意接口的建立。

里氏代換原則

子類型必須能夠替換掉他們的父類型。這使繼承複用成爲了可能,只有當子類可以替換掉父類,軟件單位的功能不受到影響是,父類才能真正被服用,而子類也能夠在服了裏的基礎上增加新的行爲。

迪米特原則

如果兩個類不必彼此直接通信,那麼這兩個類就不應當發生直接的相互作用。如果其中一個類調用另一個類的某一個方法的話,可以通過第三者轉發這個調用。


這幾大原則是面向對象思想的精華,貫穿在每個具體的設計模式中!

發佈了49 篇原創文章 · 獲贊 0 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章