Design Pattern – Separated Interface Pattern[转]
????? 在使用了分層設計的系統中,下層不應使用上層提供的功能服務。當下層必須使用上層提供的功能服務時,可以將這些功能服務抽象出來成為一個窄接口,然后讓下層依賴這個窄接口。Separated Interface模式將上層和下層之間的雙向依賴轉變成上下兩層對一個窄接口的單向依賴。
????? 在Separated Interface模式背后,隱藏著一個十分重要的設計原則,它非常著名,卻因高深莫測的定義而難以被初學者理解,它就是依賴倒置原則。
Dependency Inversion Principle
????? Depend upon abstractions. Do not depend upon concret classes.
依賴倒置原則
????? 要依賴抽象。不要依賴實現類。
????? 這聽起來和“要針對接口編程,不要針對實現編程”似乎差不多。的確,兩個設計原則都告訴我們應該依賴抽象——這個OO與生俱來的能力與萬變不離其宗的原則。不過僅僅說“要依賴抽象”也太過抽象了,感覺與老子的那句“玄之又玄,眾眇之門”有得一拼。其實,依賴倒置原則的特別之處并不在原則本身,而在于它的效果——將雙向依賴轉變成單向依賴。
????? 另外,在這里我不想解釋“倒置”或“反轉”的意思,因為我發現這些詞除了時髦好聽、令人印象深刻外,對問題的理解并無太大幫助,反而容易分散人們的注意力。
轉載于:https://www.cnblogs.com/5kuai/archive/2009/12/30/1636022.html
總結
以上是生活随笔為你收集整理的Design Pattern – Separated Interface Pattern[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT女工作者
- 下一篇: directx 9.27.1734 多语