zoukankan      html  css  js  c++  java
  • PHP 设计模式(一)

    基础的三种设计模式

    工厂模式

    为创建对象提供了一个统一的接口,好处是当被创建对象命名空间或者名称改变时,直接修改工厂的创建方法即可

    <?php
    
    class Factory{
    
        public static createDatabase(){
            $db = new Database();
            return $db;
        }    
    
    }

    单例模式

    避免重复创建对象,浪费系统资源

    class Database{
        //保存实例
        public $db;
    
        private function __construct(){
            //将构造方法私有化
        }    
    
        public static function getInstance(){
            if(!isset($this->db)){
                $this->db = new Database();
            }
            return $this->db;
        }
    }

    注册器模式

    可以在程序执行开始统一创建对象,将对象绑定到全局变量上,可以省去调用获取实例的过程

     class Register{
         protected static $objects;
         /**
          * 绑定对象到树
          */
         static function set($alias,$obj){
             self::objects[$alias] = $obj;
         }
         /**
          * 从树上获取对象
          */
         static function get($alias){
             return self::objects[$alias];
         }
         /**
          * 从树上卸载对象
          */
         static function _unset($alias){
             unset(self::objects[$alias]);
         }
     }
  • 相关阅读:
    词义辨析:事件与事故
    术语-BPM:BPM
    职位:DBA
    职业-软件:软件测试工程师
    职位-软件工程师:软件工程师
    职业-IT:全栈工程师
    术语-技术栈:技术栈
    .NET Core:目录
    .NET Core:.Net Core 百科
    术语-抽象:抽象
  • 原文地址:https://www.cnblogs.com/xiaoliwang/p/9436149.html
Copyright © 2011-2022 走看看