站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        ThinkPHP容器之控制反轉(zhuǎn)和依賴注入

        依賴注入控制反轉(zhuǎn)名字聽起來很迷,看了本文你就知道它是個什么玩意了。

        三、如何理解控制反轉(zhuǎn)和依賴注入

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

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

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

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

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

        控制反轉(zhuǎn)

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

        依賴注入

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

        作用

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

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

        下面?zhèn)z幅圖就可以很清晰的說明問題

        ThinkPHP容器之控制反轉(zhuǎn)和依賴注入ThinkPHP容器之控制反轉(zhuǎn)和依賴注入

        給大家整一個簡單的案例

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

        ThinkPHP容器之控制反轉(zhuǎn)和依賴注入然后在控制器中調(diào)用,并且打印結(jié)果肯定就是Car返回的123,這個就不去打印了。

        ThinkPHP容器之控制反轉(zhuǎn)和依賴注入
        在這里插入圖片描述

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

        ThinkPHP容器之控制反轉(zhuǎn)和依賴注入這只是一個簡單的實現(xiàn)過程,為了給閱讀框架容器代碼做一個鋪墊,在后文中會詳細(xì)說明框架中的容器注入。

        堅持學(xué)習(xí)、堅持寫博、堅持分享是咔咔從業(yè)以來一直所秉持的信念。希望在偌大互聯(lián)網(wǎng)中咔咔的文章能帶給你一絲絲幫助。我是咔咔,下期見。

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 无码国内精品人妻少妇| 97久久国产亚洲精品超碰热| 久久精品aⅴ无码中文字字幕重口| 国产成人精品一区在线| 久久久久久九九99精品| 亚洲精品宾馆在线精品酒店| 办公室久久精品| 99视频在线观看精品| 亚洲av日韩av天堂影片精品| 久99久无码精品视频免费播放| 亚洲国产精品第一区二区| 国产精品无码AV一区二区三区| 亚洲热线99精品视频| 日韩专区亚洲精品欧美专区| 精品午夜福利1000在线观看| 国产欧美日韩综合精品一区二区三区 | 久久久久亚洲精品天堂| 亚欧洲精品在线视频免费观看| 国产偷窥熟女高潮精品视频| 2021国产三级精品三级在专区| 91精品国产色综合久久| 国产亚洲精品a在线无码| 久久精品无码一区二区无码| 亚洲精品高清国产一线久久| 亚洲综合欧美精品一区二区 | 久久久无码精品亚洲日韩按摩 | 国产精品丝袜久久久久久不卡| 国产亚洲精品一品区99热| 2022国产精品自产拍在线观看 | 无码人妻精品一区二区三区99不卡| 国内精品久久久久久久久电影网| 国产香蕉国产精品偷在线观看| 99在线观看视频免费精品9| 97精品在线播放| 成人国产精品秘 果冻传媒在线| 91精品国产福利在线观看 | 成人国产精品日本在线观看 | 国产福利精品视频自拍 | 久久国产精品免费一区二区三区| 精品国产热久久久福利| 久久精品国产第一区二区|