2016-08-23 68 views
-2

在我的項目中有兩個不同的模塊(A和B)。模塊B也是可選的。但是,只有在安裝模塊B時,模塊A中才有從模塊B獲取數據的功能,從可選服務獲取數據的設計模式

是否有這種情況,而不是通過查看模塊B的存在禁用功能的任何設計模式?

+0

在「如果安裝模塊B」「安裝」?並且你使用'模塊A中的功能'一詞來引用A的方法? –

回答

0

是的,設計模式是多態。使模塊A抽象並創建兩個子類。

  1. A1總是使用B
  2. A2從不使用B

常見的邏輯仍然A。在運行時,檢查B是否存在,然後注入適當的A的子類。

1

你可以用一個實際的執行和實施null pattern用於引入B單元的API。接線時您的應用程序,你可以選擇使用哪一個,這取決於模塊B.

空模式的實現應該表現的可用性,使模塊A不知道模塊B是否存在與否。你說的話是什麼意思