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

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

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

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

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

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

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

        「控制反轉」

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

        「依賴注入」

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

        「作用」

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

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

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

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

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

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

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

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

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

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

        ?

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

        ?

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 99热成人精品免费久久| 国产A∨国片精品一区二区| 精品视频一区二区三区在线观看 | 精品视频一区二区三区四区五区| 久久精品夜夜夜夜夜久久| 国产精品一区二区久久精品无码| 97久久综合精品久久久综合 | 国模精品一区二区三区| 精品久久一区二区三区| 国产精品无码久久综合| 伊人久久精品无码二区麻豆| 欧美ppypp精品一区二区| 国产成人久久精品二区三区| 精品一区二区久久久久久久网站| 人妻少妇精品中文字幕av蜜桃| 日韩精品国产自在欧美| 国内精品久久久久久久coent | 国产成人精品日本亚洲| 日韩精品亚洲人成在线观看| 亚洲AV无码乱码精品国产| 欧美精品福利视频一区二区三区久久久精品| 久久精品国产99国产精偷 | 无码国产精品一区二区免费3p| 日本精品久久久久影院日本 | 久久久久亚洲精品男人的天堂| 国产成人综合久久精品尤物| 久久99精品国产99久久6男男| 99香蕉国产精品偷在线观看 | 日韩精品无码Av一区二区| 久久精品国产亚洲Aⅴ香蕉| 精品国产欧美一区二区三区成人| 99免费精品国产| 国产精品青青在线观看爽香蕉| 国产精品福利片免费看 | 国产欧美在线观看精品一区二区 | 亚洲精品国产va在线观看蜜芽| 久久精品国产亚洲5555| 亚洲精品欧美二区三区中文字幕| 国产精品自产拍在线观看花钱看 | 无码日韩精品一区二区三区免费 | 国产精品成人观看视频网站|