0
例如,如果我使用Dagger注入(Otto)Bus對象,那麼我將不得不編寫更多的代碼行,以便在接口中指定多少個注入點。爲什麼我們需要在java或Android中使用依賴注入的單例類?
在另一方面,如果我只使用一個單獨的類返回總線實例,然後我無需編寫代碼一樣多的行,我將不得不在依賴注入的情況下。
所以我的問題是:「爲什麼或如何是它更好地使用依賴注入注入Singleton類的實例?」
例如,如果我使用Dagger注入(Otto)Bus對象,那麼我將不得不編寫更多的代碼行,以便在接口中指定多少個注入點。爲什麼我們需要在java或Android中使用依賴注入的單例類?
在另一方面,如果我只使用一個單獨的類返回總線實例,然後我無需編寫代碼一樣多的行,我將不得不在依賴注入的情況下。
所以我的問題是:「爲什麼或如何是它更好地使用依賴注入注入Singleton類的實例?」
首先,DI將減少你有你的實例調用設置與所需的依賴樣板量。代碼越少意味着可讀性越高。爲此付出的代價是所涉及的配置,但對於大型項目來說,這是值得的。
其次,當您在您的應用上運行自動測試時,您可以從DI中受益。您將有能力用模擬替換標準單例實現,您可以控制和使用它來模擬覆蓋所有情況所需的不同場景。
話雖如此,我也認爲DI僅僅是一個非常適合大規模的Android項目,或中型到大型EE項目。否則它會增加一些不必要的複雜度恕我直言。