軟件設計七大原則

設計原則

設計要講究平衡,需考慮人力、時間、成本、質量、業務擴展性等方面,需取捨,找到適合的業務場景,並非完全遵守,完全套用

開閉原則(所有原則的基礎)

​ 定義:一個軟件實體如類、模版和函數應該對擴展開放,對改變關閉。強調的是:用抽象構建框架,用實現擴展細節。面向抽象編程。​ 優點:提高軟件系統的可複用性及可維護性

​ 繼承的方式實現。越底層,修改風險越大;儘量修改偏業務,偏上層的實現代碼。

依賴倒置原則

​ 定義:高層模塊不應該依賴低層模塊,二者都應該依賴其抽象

​ 抽象不應該依賴細節;細節應該依賴抽象

​ 針對接口編程,不要針對實現編程

​ 優點:可以減少類間的耦合性、提高系統穩定性、提高代碼可讀性和可維護性、可降低修改程序所造成的的風險接口、抽象類等形式

單一職責原則

​ 定義:不要存在多於一個導致類變更的原因

​ 一個類(看情況)、接口、方法只負責一項職責

​ 優點:降低類的複雜度、提高類的可讀性、提高系統的可維護性、降低變更引起的風險

接口隔離原則

​ 定義:用多個專門的接口,而不使用單一的總接口,客戶端不應該依賴它不需要的接口注意點:​ 一個類對一個類的依賴應該建立在最小的接口上

​ 建立單一接口,而不是建立龐大臃腫的接口

​ 儘量細化接口,接口中的方法儘量少

​ 注意適度原則,一定要適度。(完全遵守,可能會造成類的爆炸)

​ 優點:符合我們常說的高內聚低耦合的設計思想,從而使得類具有很好的可讀性、可擴展性和可維護性

迪米特原則(最少知道原則)

​ 定義:一個對象應該對其他對象保持最少的瞭解。又叫最少知道原則

​ 儘量降低類與類之間的耦合

​ 優點:降低類之間的耦合

強調只和朋友交流,不和陌生人說話朋友:出現在成員變量、方法的輸入、輸出參數中的類稱爲成員朋友類,而出現在方法體內部的類不屬於朋友類

里氏替換原則

合成/複用原則(組合/複用原則)

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