iT邦幫忙

0

springboot中的DI(dependency injection的理解)的理解

  • 分享至 

  • xImage
  •  

最好理解原概念的鏈接

使用場景 has a關係中(這個場景在編程中太多了,使用別人的庫的時候,都要用到):
傳統的關係模式中,有has a的關係,也就是說,如果我有一個類,要包含其他的類。
這時候就可以使用這個設計模式。

爲什麼要用?
解耦合:不會因爲has a某個類的實例,這個類修改的時候,導致自己也要修改;
(解耦合的好處:可擴展,容易維護,單元測試)

1 vs singleton模式,同樣是對類的實例進行操作:
DI是爲了更加靈活的使用實例,而singleton是爲了共用和共享某個實例。

2 vs 構造函數的多態,同樣是把其他類的實例作爲參數傳遞進來:
DI是靈活使用has a關係的設計模式;
構造函數的多態主要用於從父類中構造出不同的子類,是面向對象的基礎概念;


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言