java開發設計六大基本原則

2021-09-07 16:50:31 字數 1254 閱讀 6950

設計模式的六大原則:

總原則-開閉原則

對擴充套件開放,對修改封閉。在程式需要進行拓展的時候,不能去修改原有的**,而是要擴充套件原有**,實現乙個熱插拔的效果。所以一句話概括就是:為了使程式的擴充套件性好,易於維護和公升級。

想要達到這樣的效果,我們需要使用介面和抽象類等,後面的具體設計中我們會提到這點。

1、單一職責原則

不要存在多於乙個導致類變更的原因,也就是說每個類應該實現單一的職責,否則就應該把類拆分。

2、黎克特制替換原則(liskov substitution principle)

任何基類可以出現的地方,子類一定可以出現。黎克特制替換原則是繼承復用的基石,只有當衍生類可以替換基類,軟體單位的功能不受到影響時,基類才能真正被復用,而衍生類也能夠在基類的基礎上增加新的行為。

黎克特制代換原則是對「開-閉」原則的補充。實現「開閉」原則的關鍵步驟就是抽象化。而基類與子類的繼承關係就是抽象化的具體實現,所以黎克特制代換原則是對實現抽象化的具體步驟的規範。黎克特制替換原則中,子類對父類的方法盡量不要重寫和過載。因為父類代表了定義好的結構,通過這個規範的介面與外界互動,子類不應該隨便破壞它。

3、依賴倒轉原則(dependence inversion principle)

面向介面程式設計,依賴於抽象而不依賴於具體。寫**時用到具體類時,不與具體類互動,而與具體類的上層接**互。

4、介面隔離原則(inte***ce segregation principle)

每個介面中不存在子類用不到卻必須實現的方法,如果不然,就要將介面拆分。使用多個隔離的介面,比使用單個介面(多個介面方法集合到乙個的介面)要好。

5、迪公尺特法則(最少知道原則)(demeter principle)

乙個類對自己依賴的類知道的越少越好。無論被依賴的類多麼複雜,都應該將邏輯封裝在方法的內部,通過public方法提供給外部。這樣當被依賴的類變化時,才能最小的影響該類。

最少知道原則的另乙個表達方式是:只與直接的朋友通訊。類之間只要有耦合關係,就叫朋友關係。耦合分為依賴、關聯、聚合、組合等。我們稱出現為成員變數、方法引數、方法返回值中的類為直接朋友。區域性變數、臨時變數則不是直接的朋友。我們要求陌生的類不要作為區域性變數出現在類中。

6、合成復用原則(composite reuse principle)

盡量首先使用合成/聚合的方式,而不是使用繼承。

設計模式 六大基本原則

軟體實體 類 模組 函式等 應該可以擴充套件 但是不可修改。俗稱 對於拓展是開放的,對於修改是關閉的 軟體開發中,前期通過需求分析 建模,巧妙利用設計模式 使系統盡可能的易維護 易拓展 健壯 當需求變化時能夠方便的對原有系統進行擴充套件 新增模組 新增方法 而不是為了滿足需求 直接在原有 上進行改動...

設計模式之六大基本原則

要開始做個人版機房了,我又重新拿起了設計模式。今天我想說說六大基本原則。包括 單一職責,開放封閉原則,依賴倒轉原則,黎克特制代換原則,迪公尺特法則,合成 聚合復用原則。單一職責 總結 就像只有畫素能夠決定相機質量一樣,音訊改變 機的品質的好壞一樣,單一職責就是只有乙個因素改變他。開發 封閉原則 軟體...

設計模式之六大基本原則

單一職責原則的本質就是要將乙個複雜的邏輯拆分成多個簡單的邏輯,以此來降低複雜度。黎克特制代換原則的核心 父親能做的孩子都能做,孩子能做的父親不能做,降低耦合度 開閉原則的核心 對修改關閉,對擴充套件開發,依次來減少耦合度。依賴倒置原則的核心 讓原來相互依賴的兩個核心模組,變為同時依賴於另乙個非核心模...