我正在尋找一些關於哪些設計模式用於我的問題的想法,無論語言如何。三種類似的API - 最佳設計模式?
我正在訪問三個具有不同接口和功能的API,但都是爲了相同的目的,以統一的方式向我返回有關同一類內容的信息 - 博客作者。
一些API完全符合我的要求,有些API需要API +屏幕抓取等等。
明顯的選擇似乎是適配器模式,但我想真正深入到這件事的設計,因此您的想法將不勝感激!
爲了清楚起見,現在我設想每個Web服務都有一個類,它們都執行基本的API以及不太優雅的東西。我想它然後返回一致的結果到它的適配器。我想象的是Adapter採用搜索之類的方法,然後將其路由到API中適當的方法,並找回結果,無論調用哪個服務,結果都是一樣的。
如果這聽起來像一個家庭作業,它是 - 但它是我分配給自己,以學習一些很酷的設計模式的東西。適配器是否正確?任何其他不錯的選擇?
提前致謝!
更新:雖然Adapter和Facade模式在我看來有很多相似之處,但PawełDyda指出,我所描述的實際上並不是Adapter,而是Facade。我同意。假設隨着時間的推移越來越多的API,有沒有人認爲比Facade有更好的選擇?
再次感謝。
我傾向於不同意。一切都取決於項目的大小。如果他知道該項目將在規模上演變成一些怪物,那麼實際上需要抽象化並應該徹底使用。 – 2010-09-18 17:27:39
謝謝兩位!我現在正在研究Facade。 – user277127 2010-09-18 17:32:28