採用多個與特定客戶類有關的介面比採用乙個通用的涵蓋多個業務方法的介面要好。
isp原則是另外乙個支援諸如com等元件化的使能技術。缺少isp,元件、類的可用性和移植性將大打折扣。
這個原則的本質相當簡單。如果你擁有乙個針對多個客戶的類,為每乙個客戶建立特定業務介面,然後使該客戶類繼承多個特定業務介面將比直接載入客戶所需所有方法有效。
圖4展示了乙個擁有多個客戶的類。它通過乙個巨大的介面來服務所有的客戶。只要針對客戶a的方法發生改變,客戶b和客戶c就會受到影響。因此可能需要進行重新編譯和發布。這是一種不幸的做法。
圖4 帶有整合介面的服務類
我們再看圖-5中所展示的技術。每個特定客戶所需的方法被置於特定的介面中,這些介面被service類所繼承並實現。
圖5 使用介面分離的服務類設計
如果針對客戶a的方法發生改變,客戶b和客戶c並不會受到任何影響,也不需要進行再次編譯和重新發布
CQS 命令 查詢分離原則
摘自 uml和模式應用 命令 查詢分離原則 command query separation principle cqs是針對方法的經典oo設計原則.該原則指出,任何方法都可能是如下情況之一 1.執行動作 更新,調整.的命令方法,這種方法通常具有改變物件狀態等 並且是void的.2.向呼叫者返回資料...
設計原則 介面隔離原則
介面隔離原則,這個原則最關鍵就是理解其中 介面 的含義,不同的理解方式,對應的在原則上也有不同的解讀方式。除此之外,介面隔離原則和單一職責原則有些類似,需要了解它們的區別和聯絡 介面隔離原則,英文名ite ce segregation principle,簡稱isp。客戶端不應強迫它不需要的介面。這...
學習介面設計原則 介面隔離原則
package com.mode 介面中的方法盡量少。也就是說,我們要為各個類建立專用的介面,而不要試圖去建立乙個很龐大的介面供所有依賴它的類去呼叫。本例子中,將乙個龐大的介面變更為3個專用的介面所採用的就是介面隔離原則。採用介面隔離原則對介面進行約束時,要注意以下幾點 1.介面盡量小,但是要有限度...