为了账号安全,请及时绑定邮箱和手机立即绑定

大话PHP设计模式

Rango PHP开发工程师
难度中级
时长 3小时30分
学习人数
综合评分9.57
139人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.6 逻辑清晰

已采纳回答 / PunkVv
把代码贴出来看一下 是不是你Loader类的命名空间不对

已采纳回答 / shuidaan
redis nosql 都是存在数据库的,虽然是缓存,但是可以保留。   但是这个代码的注册器,程序完全运行结束后,就全部销毁了

已采纳回答 / 学习的博士
$res = $order->where($condition)->first();$res->updete($value);确保始终返回的都是一个数据库资源的对象,可以参考下laravel的ORM模式

已采纳回答 / qq__8076
可以,因为他们三只调用了IDatabase接口,并没有用到Database。php

已采纳回答 / php_web
如果你只希望在本类使用就设置为私有的属性;如果你也希望能被子类使用,则设置为受保护的属性。至于static,决定你这个无需实例化即可访问。

已采纳回答 / 慕粉1472526263
static function createUser($id){ $key='user_'.$id; $user=Register::get($key); if(!$user){ $user=new User($id); Register::set($key,$user); } return $user; }通过工厂模式这个静态方法来实例化user  请问还有什么不明白的吗

已采纳回答 / 吴小琪
因为它会寻找相对于项目目录下('/')命名空间下的类,即为:IMOOC/Object

已采纳回答 / 山谷里的小水泡0
如果不用观察者的话就需要在那个函数里一直加代码,各种逻辑混合在一起。但是用观察这就可以不修改原来的代码,只是增加新类和实例,在项目中逻辑更清楚。可扩展行将会更好,也方便测试。修改代码往往会带入新的bug。

已采纳回答 / dky
单例模式,构建者模式,   其实最重要的是分类思想和接口抽象类使用, 一通百通

已采纳回答 / 走在路上_
spl_autoload_register(string method)是的参数一个是个方法,而这个方法是放在Imooc命名空间下面的Loader类的Autoload方法,所以这个参数填写的时候必须把明明空间写上去,本来是要写成 \Imooc\Loader::Autoload,但是这个'\'在引号里面是转义字符,'\\'在引号里面才能表示为'\'

已采纳回答 / Heise
不对 str_replace函数是替换作用  比如  $db = Core\Factory::createdb();   自动加载方法里面的 str_replace("\\",'/',$class) 把" \ "替换成" / "   因为 " \ " 需要转义 所以需要 " \\ "两个杠杠

已采纳回答 / 紫蝶爵
单一职责:一个类只需要做好一件事情。开放封闭:一个类,应该是可扩展的,而不可修改的。依赖倒置:一个类,不应该强依赖另外一个类。每个类对于另外一个类都是可替换的。配置化:尽可能地使用配置,而不是硬编码。面向接口编程:只需要关心接口,不需要关心实现。
首页上一页1234下一页尾页
课程须知
要想更好的掌握本课课程的重点内容,那么熟知面向对象的相关知识是必不可少的。
老师告诉你能学到什么?
1、了解PHP的11种设计模式 2、掌握设计模式的编程实现 3、具备使用设计模式进行面向对象编程的能力

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消