-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类实例之外,您不应该看到任何差异。