# laravel
## 服务提供者是什么?
## IoC 容器是什么?
容器,字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。当然,有这样一种容器,它存放的不是文本、数值,而是对象、对象的描述(类、接口)或者是提供对象的回调,通过这种容器,我们得以实现许多高级的功能,其中最常提到的,就是 “解耦” 、“依赖注入(DI)”。本文就从这里开始。
## Facades 是什么?
Facades 为应用的 服务容器 提供了一个「静态」 接口。Laravel 自带了很多 Facades,可以访问绝大部分功能。Laravel Facades 实际是服务容器中底层类的 「静态代理」 ,相对于传统静态方法,在使用时能够提供更加灵活、更加易于测试、更加优雅的语法。
## Contract 是什么?
Laravel 的契约是一组接口,它们由框架提供并定义了核心服务。 例如,Illuminate\Contracts\Queue\Queue 契约 定义了队列任务需要的方法,而 Illuminate\Contracts\Mail\Mailer 契约定义了发送邮件需要的方法。
## 依赖注入的原理?
通过类的[反射](http://www.php.net/manual/zh/class.reflectionmethod.php) 对象获取具体参数,
## 什么是 Composer, 工作原理是什么?
依据composer.json中需要的包以及包的版本去[packagist](https://packagist.org/) 网站上download到本地,并且处理好依赖关系
## disptach和event区别
# 相关文章
* [Laravel 服务提供者是如何注册的](https://www.jianshu.com/p/a15445b9567d)
* [Laravel 服务容器,IoC,DI](https://learnku.com/articles/19195)
* [Laravel 的 Facade 实现原理](https://learnku.com/articles/5464/the-facade-implementation-principle-of-laravel)
* [Laravel 核心--Contracts 契约](https://www.jianshu.com/p/3fe865c51964)
- 简介
- php
- php基础
- php常用数组函数
- php常用字符串函数
- php魔术方法
- php高阶
- swoole
- php优化
- workerman
- PHP底层运行机制和原理
- php框架
- laravel
- 前端
- react
- 爬虫
- Scrapy
- Linux
- IO复用
- nginx
- nginx进程工作原理
- nginx配置
- 正向代理反向代理
- UPSTREAM
- SERVER
- HTTPS
- queue
- kafka
- redis
- DB
- mysql
- 存储引擎
- 索引
- 锁
- 触发器
- 分库分表
- 三范式
- 负载均衡
- 事务
- EXPLAN
- mysql死锁
- mysql索引覆盖与回表
- mysql聚簇索引与非聚簇索引
- NoSql
- memcache
- redis
- mongo
- 网络协议
- tcp与udp
- https与http
- 架构
- LNMP架构下HTTP请求的调用次序
- 数据结构&算法
- 基础数据结构
- Linked List
- array
- stack
- queue
- tree
- hash
- heap
- 常见算法
- 排序算法
- 查找算法
- 其他
- php的一些坑
- 常问面试题
- 技术面试最后反问面试官的话
- hr
- redis缓存击穿、穿透、雪崩
- 面试中回答的不好的问题
- web攻击防范