-1
我有很多門面,所以它會減慢表演? 或者如果我想在某些控制器上使用某些類,那麼我應該怎麼做,我的意思是好的做法如果我使用太多Facades會影響性能?
我有很多門面,所以它會減慢表演? 或者如果我想在某些控制器上使用某些類,那麼我應該怎麼做,我的意思是好的做法如果我使用太多Facades會影響性能?
Facade是調用Laravel的依賴注入容器中的實例的另一種方法。它們在整個應用程序中都可用。
依賴注入的實例只能在聲明它們的地方纔可用,使您的類更好地排序。
use Dependency;
class Class
{
public function foo()
{
return Dependency::foo();
}
}
我個人覺得這個方法混亂,你可以努力去理解其中的依賴實際上來自除非你在代碼中直接搜索。
use Author\Library\Dependency;
class Class
{
public function __construct(Dependency $dependency)
{
$this->dependency = $dependency;
}
public function foo()
{
return $this->dependency->foo();
}
}
這種做法,而是讓你需要的類中使用的實例的直接信息。
在良好實踐方面,我認爲這只是一個偏好問題,儘管Laravel 4.x基於Facades,但現在在5.x上的數量要少得多。
在性能方面,除了在Composer中自動加載附加X類實例之外,您不應該看到任何差異。