今天看了一下以前的模型代码
发现控制器中不断的在new model() 调用模型方法
这样子会不断的对模型进行实例化 , 并不断的销毁对象
比如:
控制器:public function getList()
{
$list = (new GoodModel)->getListByPage(10);
return $list;
}
public function getDetail($id)
{
$data = (new GoodModel)->getDetailById($id);
return $data;
}
控制器简单优化
下面是优化后的控制器:
private $goodsModel ;
public function __construct()
{
$this->goodsModel = new GoodsModel();
}
public function getList()
{
$list = $this->goodsModel->getListByPage(10);
return $list;
}
public function getDetail($id)
{
$data = $this->goodsModel->getDetailById($id);
return $data;
}
但是这还不是我想要的 , 也不是最好的, 而且当一个业务比较复杂,使用了多个模型 ,对后期维护也不是很方便
单例模式优化单例模式: 单例模式是创建型模式 , 提供了一种创建对象的最佳方式 ,能够确保单个对象被创建,也就是访问唯一对象的方式,可以直接访问,无需实例化该对象
下面就是加入单利模式的优化结果
控制器 public function getList()
{
$list = GoodModel::getInstance()->getListByPage(10);
return $list;
}
模型
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?