PHP:性能初始化与静态注册表类

时间:2014-10-13 16:21:27

标签: php class design-patterns registry

初始化注册表类和在性能中使用静态方法有很大的区别吗?

例如

class Registry
{
 private static $data;

 public static function set($key,$value)
 {
   self::$data[$key] = $value;
 }

 public static function get($key)
 {
   return isset(self::$data[$key]) ? self::$data[$key] : false;
 }
}
另一方面

class Registry
{
  private $data = array();

  public function set($key,$value)
  {
    $this->data[$key] = $value;
  }

  public function get($key)
  {
    return isset($this->data[$key]) ? $this->data[$key] : false;
  }

}

1 个答案:

答案 0 :(得分:1)

  

性能差异很大

没有。主要关注的是第一种方法即将违反Dependency Inversion。第二种方法是允许注入注册表对象,从而提高可测试性和可扩展性。