Sho*_*hoe 7 php design-patterns lazy-loading
我刚刚读到了关于"延迟加载"设计模式的内容.
是否可以过度使用延迟加载来加载所有类并include(..)完全忘记?
这种方法的缺点是什么?
有几点关于自动加载:
通过使用自动加载而不是始终包含所有文件(特别是随着文件数量越来越大),您将看到良好的性能提升.
当实现自动加载,它是更好地使用
spl_autoload_register()比
__autoload().
虽然很多时候人们谈论PHP中的延迟加载,但他们谈论的内容如下:
class Foo {
protected $bar = null;
public function getBar() {
if ($this->bar == null) {
$this->bar = ExpensiveOperation();
}
return $this->bar;
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您只需在实际需要使用时加载属性,而不是每次实例化对象时都可以,这可能会带来一些好处.