ThinkPHP容器最后總結(jié)

本文是閱讀容器源碼之后的最后一篇總結(jié)文章,是對容器這一知識點一個小總結(jié)

八、容器源碼閱讀后總結(jié)

注冊模式

本文先從倆個設(shè)計模式開頭,分別為單例模式和注冊樹模式。

單例模式簡單理解就是在應(yīng)用程序聲明周期內(nèi)只會返回一個實例對象,不會再去創(chuàng)建新的對象。

注冊樹模式理解就是會把程序中使用的對象都會存放在一顆樹上,使用的時候直接從樹上獲取對象直接使用即可。

控制反轉(zhuǎn)依賴注入

控制反轉(zhuǎn)和依賴注入千萬不要讓名字把人虎住了,倆個看待一個事件的問題不同,一個是站在容器角度,一個是站在應(yīng)用程序角度。

從容器角度來看,容器控制著應(yīng)用程序,由容器反向的向應(yīng)用程序注入外部資源

從應(yīng)用程序的角度來看,應(yīng)用程序依賴容器創(chuàng)建并注入它所需的外部資源。

反射

反射沒有什么需要總結(jié)的,打開文檔看一下就明白了,重要的要學(xué)會使用并且知道各自什么意思學(xué)會靈活運用即可。

容器源碼解析

容器的源碼看完后你會發(fā)現(xiàn)用的東西就是上邊說的三個知識點形成的,運用注冊模式來對容器中的對象管理。

對于這個圖需要牢牢記住,在源碼中就使用的這四個屬性走來走去的。

ThinkPHP容器最后總結(jié)
在這里插入圖片描述

在一個就是代碼的執(zhí)行流程

ThinkPHP容器最后總結(jié)
在這里插入圖片描述

在容器中最重要的方法就是invokeClass和bindParams這倆個方法跟這咔咔的思路走就沒有什么問題,跟這斷點的流程一點一點執(zhí)行。

這塊看的時候估計有點繞,但是仔細(xì)看完之后你會發(fā)現(xiàn)可以學(xué)到很多東西

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

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊11 分享