1. 程式人生 > >設計模式六大原則解析,屌炸天

設計模式六大原則解析,屌炸天

設計模式(Design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的、程式碼設計經驗的總結。使用設計模式是為了可重用程式碼、讓程式碼更容易被他人理解、保證程式碼可靠性。 毫無疑問,設計模式於己於他人於系統都是多贏的;設計模式使程式碼編制真正工程化;設計模式是軟體工程的基石脈絡,如同大廈的結構一樣。

 

       1.單一原則---> 目的是為了高內聚,低耦合

       通俗講:就是一個類只做一件事,做的事情多了,就容易產生耦合,不好繼承

       2.開閉原則-->  目的是:對擴充套件開放,對修改閉合

                 通俗講: 對擴充套件(繼承、實現等都)可以開放,對類內部修改是閉合的,不讓修改。

                在不修改原始碼的基礎上實現擴充套件(首先想到工廠模式)

        軟體發展過程中,隨著時間的推移進行擴充套件,但是不能改變原有的功能,又能保證框架的穩   

                   定性,這樣就會抽象出一層,抽象層不變,而且能擴充套件,底層是程式碼實現【抽象工廠模型就 

                    是這麼演化來的】   抽象化是開閉原則的關鍵

 

      3.里氏替換原則--> 目的是:向上轉型,

                  所用引用父類的地方,子類中所有方法對父類都是透   明的,替換子類之後,不報錯。

                      設計理念:在程式中儘量使用基類(父類)進行定義,這樣在程式執行時使    用子類物件替換父類物件。

                      注意:里氏替換原則是實現開閉原則的一個重要手段。

 

      4.依賴倒置原則 -->目的是:

 

      5.介面隔離原則--> 目的是:幹自己該乾的事,不該自己乾的事情不要幹。

                           介面太龐大,容易造成許多方法的空實現,浪費資源,

                          介面覆蓋面太小,造成介面氾濫,不容易管理。

      6.迪米特原則--> 目的是: 低耦合。不要與陌生人說話,不要與其他類發生關係,

 

 

如何理解這六條原則,現在附上兩位大神的連結

頭頭哥:https://www.cnblogs.com/toutou/p/4870926.html#_label0

海子:https://www.cnblogs.com/dolphin0520/p/3919839.html