站長資訊網
最全最豐富的資訊網站

如何理解控制反轉和依賴注入

其實這倆個就是指的一個東西,就是一種編程思想而已,不要想的那么難以理解和高大上。

那么什么是容器,容器直面理解就是裝東西的東西。在編程中,我們常見的變量、對象屬性都是一個容器。一個容器里邊能夠裝什么,完全取決于對該容器的定義。

然而現在我們討論的是另外一種容器,它存儲的既不是文本、數值,而是對象、類、接口通過這種容器,我的得以實現很多高級功能,最常用的就是代碼之間的解耦、依賴注入。

那么為什么會存在倆種概念,為什么要說控制反轉和依賴注入呢!在上文也提到過,它們其實指的就是一種東西,只是描述的角度不同而已。

就跟你是爸爸的兒子,你還是你爺爺的孫子,不管兒子還是孫子都指的是一個人。只是站在不同的角度看待問題而已。

「控制反轉」

是站在容器的角度看待問題,容器控制著應用程序,由容器反向的向應用程序注入應用程序需要的外部資源。

「依賴注入」

是站在應用程序的角度看待問題,應用程序依賴容器創建并注入它所需要的外部資源。

「作用」

主要用來減少代碼之間的耦合程度。

有效的分離對象和應用程序所需要的外部資源。

下面倆幅圖就可以很清晰的說明問題

如何理解控制反轉和依賴注入如何理解控制反轉和依賴注入

「給大家整一個簡單的案例」

定義倆個類分別為Person、Car,在Person中實例并調用Car中的pay方法。

如何理解控制反轉和依賴注入然后在控制器中調用,并且打印結果肯定就是Car返回的123,這個就不去打印了。

如何理解控制反轉和依賴注入
在這里插入圖片描述

那這個時候我們把代碼修改一下,把Car類直接傳給Person類,在Person類中直接用傳過來的對象去調用對應的方法。

如何理解控制反轉和依賴注入這只是一個簡單的實現過程,為了給閱讀框架容器代碼做一個鋪墊,在后文中會詳細說明框架中的容器注入。

?

堅持學習、堅持寫博、堅持分享是咔咔從業以來一直所秉持的信念。希望在偌大互聯網中咔咔的文章能帶給你一絲絲幫助。我是咔咔,下期見。

?

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品国产亚洲AV电影网| 久久精品免看国产| 无码日韩人妻AV一区二区三区| 精品亚洲AV无码一区二区| 亚洲国产精品SSS在线观看AV| 国产精品自在线拍国产电影 | 国产精品无码亚洲一区二区三区| 日本h在线精品免费观看| 久久精品人人做人人爽97| 久久九九AV免费精品| 热99re久久国超精品首页| 日韩精品人妻一区二区中文八零| 尤物国产精品福利三区| 国产精品 视频一区 二区三区| 欧美日韩国产免费一区二区三区| 国产伦精品一区二区三区四区| 国外AV无码精品国产精品 | 一本大道无码日韩精品影视| 国产精品无码专区在线播放| 精品国产免费一区二区| 国产精品亚洲一区二区在线观看 | 亚洲国产精品无码久久青草| 精品一区二区三区3d动漫| 日韩精品人妻系列无码av东京 | 国产成人精品综合久久久久| 国内精品久久久久久中文字幕| 久久久99精品一区二区| 久夜色精品国产一区二区三区| 国产福利电影一区二区三区,亚洲国模精品一区| 日批日韩在线观看| 老司机午夜精品视频播放| 一本色道久久88综合日韩精品 | 国产精品视频a播放| jizz国产精品jizz中国| 国产精品91视频| 国产精品机视频大陆| 亚洲中文精品久久久久久不卡| 日韩精品成人无码专区免费| 国产欧美精品123区发布 | 国产三级精品三级在专区 | 国产精品一二二区|