複製鏈接
請複製以下鏈接發送給好友

接口分離原則

鎖定
接口分離原則指在設計時採用多個與特定客户類有關的接口比採用一個通用的接口要好。即,一個類要給多個客户使用,那麼可以為每個客户創建一個接口,然後這個類實現所有的接口;而不要只創建一個接口,其中包含所有客户類需要的方法,然後這個類實現這個接口。
中文名
接口分離原則
釋    義
在設計時採用多個與特定客户類有關的接口
圖1 圖1
沒有使用接口分離原理的設計如圖1所示,存在以下問題:如果Client A類需要改變所使用的Service接口中的方法,那麼不但要改動Service接口和ServiceImp類,還要對ClientB類和ClientC類重新編譯。也就是説,對ClientA的修改會影響ClientB和ClientC,因此應對其進行修改。
1-1 使用通用接口的設計
如圖2所示,採用的是接口分離原則,這個對每個客户類都有一個專用的接口,這個接口中只聲明瞭與這個客户類相關的方法,而ServiceImp類實現了所有的接口。如果ClientA要改變它所使用的接口中的方法,只需改動ServiceA接口和ServiceImp類即可,ClientB和ClientC類不受影響。
圖2 圖2
1-2 使用接口分離的設計