架構(gòu)設(shè)計六大基本原則

架構(gòu)最重要的就是編程思想

  1. 利于開發(fā)者
  2. 利于公司
  3. 利于客戶

在日常開發(fā)中我們需要遵從六大基本原則,分別是:

  1. 單一職責(zé)原則(SRP Single Responsibility Principle) -> 可參考firstChapter version2
    定義:對一個類來說,應(yīng)該僅有一個引起它變化的原因。簡單來說就是模塊的劃分需要做到職責(zé)清晰,不要既能滿足A需求,又能滿足B需求,這樣耦合太強,不利于后期的擴展和維護。
  1. 開閉原則(COP Open Close Principle)-> 可參考firstChapter version3
    定義:軟件中的對象(類、模塊、函數(shù)等)應(yīng)該對于擴展是開放的,但是對于修改是封閉的。簡單的說就是程序中類應(yīng)該是易于擴展的,而不是一有什么新的需求或者變化就去修改原來的代碼,這樣很容易出現(xiàn)問題。
  1. 里氏替換原則(LSP Liskov Substitution Principle)-> 可參考firstChapter version3
    定義:在基類出現(xiàn)的地方,其子類也可以出現(xiàn),并且不會出現(xiàn)錯誤。簡單的說就是利用了Java面向?qū)ο笏枷胫械睦^承、多態(tài)的特性。
  1. 依賴導(dǎo)致原則(DIP Dependence Inversion Principle)-> 可參考firstChapter version3
    定義:高層次的模塊不依賴于低層次的模塊的實現(xiàn)細節(jié)。簡單來說就是依賴抽象(高層次模塊)而不依賴具體實現(xiàn)(低層次模塊)。
  1. 接口隔離原則(ISP InterfaceSegregation Principles)-> 可參考firstChapter version3
    定義:不依賴不需要的接口,從而容易重構(gòu)、更改和重新部署。
  1. 迪米特原則(最少知識原則 LKP/LOD Least Knowledge Principle)-> 可參考firstChapter version4
    定義:一個類應(yīng)該對自己需要耦合或者調(diào)用的類知道的最少,類的內(nèi)部如何實現(xiàn)與調(diào)用者或者依賴者沒關(guān)系,調(diào)用者或者依賴者只需要知道它需要的方法即可。

參考鏈接:https://github.com/cpMark/DesignPatterns

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 面向?qū)ο蟮?個基本要素: 封裝、繼承、多態(tài) 面向?qū)ο蟮?個基本設(shè)計原則: 單一職責(zé)原則(Single-Respos...
    badcyc閱讀 979評論 0 4
  • 單一職責(zé)原則 (SRP) 全稱 SRP , Single Responsibility Principle 單一職...
    米莉_L閱讀 1,876評論 2 5
  • 整理總結(jié)自《設(shè)計模式之禪》一書 1 單一職責(zé)原則 Single Responsibility Principle ...
    笑哥哥閱讀 531評論 0 1
  • 什么是設(shè)計模式?設(shè)計模式(Design Pattern)是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類的、代碼設(shè)計經(jīng)驗的...
    星星_點燈閱讀 507評論 0 0
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,355評論 25 708

友情鏈接更多精彩內(nèi)容