1. 程式人生 > >面向對象設計原則 接口分離原則(Interface Segregation Principle)

面向對象設計原則 接口分離原則(Interface Segregation Principle)

interface 提高 意義 有意義 思考 分離 是的 可維護 nbsp

接口隔離原則

使用多個專門的接口,而不使用單一的總接口,即客戶端不應該依賴那些它不需要的接口。

從接口隔離原則的定義可以看出,他似乎跟SRP有許多相似之處。

是的其實ISP和SRP都是強調職責的單一性, 接口隔離原則告訴我們在定義接口的時候要根據職責定義“較小”的接口,不要定義“高大全”的接口。

也就是說接口要盡可能的職責單一,這樣更容易復用,暴露給客戶端的方法更具有“針對性”。

遵守接口隔離原則,會使代碼量增加不少,源碼中也是這樣。

當方法隨著業務需求的增加而不斷增加的話,如果我們不應用接口隔離原則,那麽就可能形成一個龐大臃腫的接口,這樣的接口的可維護性和重用性是很差的。

在項目開發中,依賴幾個專用的接口要比依賴一個綜合的接口更加靈活。通過分散定義多個接口,可以預防外來變更的擴散,提高系統的靈活性和可維護性。

雖然接口隔離原則很有意義,但在實際項目中,應該註意度的把握,接口設計的過大或過小都不好,應該根據實際情況多思考再進行設計。

面向對象設計原則 接口分離原則(Interface Segregation Principle)