Skip to content

Latest commit

 

History

History
72 lines (53 loc) · 6.82 KB

README.md

File metadata and controls

72 lines (53 loc) · 6.82 KB

Learning_Laravel_Kernel

Laravel核心代码学习

前言

如果你对Laravel里面的依赖注入、服务绑定、服务解析等等这些东西很好奇,并且觉得只有理解了一个框架的核心代码才能真正把一个框架用好才能写出最佳实践,那么这个教程对你会很有帮助。教程完整覆盖了Laravel核心的所有内容,并且根据开发者使用Laravel的通用场景开始逐步深入内核讲解整个框架核心流程中涉及到的方方面面,整个教程的目录顺序也是根据用Laravel进行开发时常涉及的部分编排的。相信你认真学完这个教程自己融汇贯通后就能完全掌握Laravel并胜任用它设计和架构生产系统的职责。

面向的人群

要想很好地理解文章的内容你需要具备一定的PHP基础和Laravel的知识,我并不会解释核心里的每一行代码,更多的是通过梳理代码流程来解释Laravel核心模块里最典型功能的设计思路和具体实现。所以我希望读者可以将文章内容看作是源代码的导读,跟随文章自己逐步地去看一遍Laravel每个核心组件的代码,如果遇到理解起来比较困难的地方就去补齐那里用到的知识再来继续阅读,我也希望读者在理解了文章里说的那些典型功能后能够自己再去举一三地看看模块里其他功能的源代码。相信看完Laravel核心的代码后你不仅能更熟练地使用Laravel也能在其它基础知识方面有所提高。

涉及的内容

文章主要专注于Laravel核心的学习,包括:服务容器、服务提供器、中间件、路由、Facades、事件驱动系统、Auth用户认证系统以及作为核心服务的DatabaseRequestResponseCookieSessionLaravel里其它的部分也都是作为服务注册到服务容器里提供给应用使用的,当你理解了上面那些东西后再去看其它的服务也就会很容易理解了。在学习源码的过程中我会向读者解释关于这些核心模块的常见问题比如:使用DB或者Model操作数据库时Laravel是什么时候连接上数据库的? 注册到容器的服务是怎么被解析出来的等等。

关于框架版本

在通过这个项目学习Laravel核心代码时请使用Laravel5.5版本,由于服务容器和中间件两篇文章成稿比较早那会还在使用5.2版本的Laravel做项目所以引用的代码也来自5.2版本,其余章节的代码均引用自Laravel5.5的核心,两个版本的核心代码差异很小我已经在这两篇文章中标注出差异的地方所以不影响读者使用这个项目来学习Laravel5.5版本的核心代码。

Contact

文章目录

其他推荐

另外最近我推出了自己的Go实战专栏课程,专栏配套一个专属的私有项目,通过tag版本追踪记录每个章节代码的变更,让大家能轻松跟上学习

专栏分为五大部分

image

访问:https://xiaobot.net/p/golang 或者扫码下方海报二维码可查看课程详情

image