Laravel中有助手函數,那為什麼還需要Facades呢?
他相對於使用助手函數以及直接去訪問底層類別有什麼好處嗎?
(文檔我有點看不懂,所以才來問的這個問題)
Laravel中有助手函數,那為什麼還需要Facades呢?
他相對於使用助手函數以及直接去訪問底層類別有什麼好處嗎?
(文檔我有點看不懂,所以才來問的這個問題)
便於快速開發,不需要進行對容器的依賴注入操作,就能以全域變數的方式快速實現功能,就是以犧牲可維護性來換取開發速度。
如果是全域助手函數,那麼與laravel的facade基本上沒有區別,相對助手函數的一個好處當我們需要對助手函數或facade修改功能時,我們不得不修改助手函數裡面的程式碼,而用facade時,我們可以在不修改facade程式碼的情況下(在程式初始化或已經執行時),把它實際指向的單例幹掉,重新指向一個符合我們要求功能的新單例,實現一個比較醜的依賴注入,不過好像facade預設沒提供注入方法,還是要修改facade的內部實作。
對了 順便問下 laravel教學影片有沒有最近點的
這個問題可以轉換為,能定義函數為什麼要定義類別。
雖然創建的時候麻煩點,但是之後的開發很方便,直接用別名調用,能減少很多代碼~~