laravel 契约概念
人丑就要多读书,反正,其他什么事也与你无关。
laravel 什么是契约?
Laravel中的契约是指框架提供的一系列定义核心服务的接口,比如缓存,队列,日志的接口,契约就是接口。
实质就是面向接口编程,
为什么要定义接口?
定义接口的目的是为了解耦,定义契约,是为了一组功能实现的一个约定,方便第三方接口开发人员的开发。
例如,在申明一个接口的时候,如下申明
use Memcached;
class Repository {
public $cache;
public function __construct(Memcached $cache) {
$this->cache = $cache;
}
}
那么这个 接口类就只能适用于 Memcached 的使用了,如何想用其他的,比如redis之类的就不行
但是如果使用契约设计接口
use Illuminate\Contracts\Cache;
class Repository {
public $cache;
public function __construct(Cache $cache) {
$this->cache = $cache;
}
}
那么只要符合Cache类型的缓存类,是不是都可以进行运用,而不用改变什么代码
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
2021-08-18 算法 之 二叉树的前序 中序 后序遍历