过去一年时间写了20多篇文章来探讨了我认为的Larave框架最核心部分的设计思路、代码实现。通过更新文章自己在软件设计、文字表达方面都有所提高,在刚开始决定写Laravel源码分析地文章的时候我地期望是自己和读者通过学习Laravel核心的代码能在软件设计上带来提高,这些提高主要是指两方面:

  • 通过学习Laravel核心的代码来辅助理解软件设计行业中经常提及的核心概念,通过学习像IocContainer、面向对象的五大原则SOLID 是怎么应用到框架设计中去的来指导应该如何去做软件开发设计。这方面对你的收益应该是跳出Laravel框架和PHP语言层面的,当你需要切换到其他框架和语言时这些收益仍会反馈给你。
  • 熟练掌握Laravel的使用,虽然很多人说框架只是一个工具不应该花太多时间在工具的研究上,但是现实时开发者群体大部分人并没有在头部的那几家大公司,也不架构师,我们多数的工作还是在写业务代码,那么既然你需要Laravel这个工具帮你完成每天的任务,那么为了尽可能高效率高质量的完成项目,确实是需要多了去看看框架的源码,了解一些框架常用的方法在positive和negative时的行为到底是什么(各种情况下的返回值和抛出的异常),知道怎么使用ORM才能让查询更高效等等,这些内容往往在框架的文档都是很少提及的,需要去看源码了解一下,如果你只会文档里提到的那些典型的用法显然不能算是熟练掌握的。

Laravel整个框架设计到的内容有很多,其他的组件我也就不再一一去写文章梳理了, 相信你在认真看完这个系列的文章后,假如你在使用其他组件过程中遇到了诡异的问题,或者好奇框架是怎么帮你实现功能的?你完全有能力去梳理其他组件的源码实现来解决你的疑惑。

为了大家阅读方便,我把这些源码学习的文章汇总到这里。

  • 类地反射和依赖注入
  • IocContainer
  • 服务提供者
  • Facades
  • Route
  • Middleware
  • 控制器
  • Request
  • Response
  • Database基础
  • QueryBuilder
  • 模型CRUD
  • 模型关联
  • 事件系统
  • Auth认证系统(基础介绍)
  • Auth认证系统(实现细节)
  • 自定义你的Auth认证系统
  • Session
  • Cookie
  • Contracts契约
  • 加载ENV配置
  • HTTP内核
  • Console内核
  • 异常处理

最后还是回到上面说的,框架只是工具如果想要在软件行业有所发展还是要把更多的精力投入到内功修炼上,所谓内功就是这些经过时间沉淀下来的基础知识,框架层出不穷,但是它们应用的基础知识却甚少改变。数据库、HTTP、算法和数据结构这些都是编程的内功,只有内功深厚了才能解决遇到的复杂问题。

推荐几个我认为挺好的修炼内功的专栏给大家:

程序员的数据基础课

MySQL实战45讲

数据结构与算法

算法面试通关40讲

许式伟的架构课

当然还有日新月异的前端知识也是需要会基础的用法的,最起码了解一下团队内部使用的前端框架的基础知识,这样对咱们做系统设计也会有帮助,最近在另外一个平台上看到分享的一个免费教程使用Laravel和Vue构建API驱动的应用,讲的非常好,希望Vue能快速入门的可以跟着教程一起动手练习练习。

Laravel核心解读--完结篇 1相关推荐

  1. Laravel核心解读--完结篇

    过去一年时间写了20多篇文章来探讨了我认为的Larave框架最核心部分的设计思路.代码实现.通过更新文章自己在软件设计.文字表达方面都有所提高,在刚开始决定写Laravel源码分析地文章的时候我地期望 ...

  2. Laravel核心解读--服务容器(IocContainer)

    Laravel的核心是IocContainer, 文档中称其为"服务容器",服务容器是一个用于管理类依赖和执行依赖注入的强大工具,Laravel中的功能模块比如 Route.Elo ...

  3. Laravel核心解读 -- 用户认证系统(基础介绍)

    用户认证系统(基础介绍) 使用过Laravel的开发者都知道,Laravel自带了一个认证系统来提供基本的用户注册.登录.认证.找回密码,如果Auth系统里提供的基础功能不满足需求还可以很方便的在这些 ...

  4. Laravel核心解读--中间件(Middleware)

    中间件(Middleware)在Laravel中起着过滤进入应用的HTTP请求对象(Request)和完善离开应用的HTTP响应对象(Reponse)的作用, 而且可以通过应用多个中间件来层层过滤请求 ...

  5. Laravel核心解读--服务提供器(ServiceProvider)

    服务提供器是所有 Laravel 应用程序引导中心.你的应用程序自定义的服务.第三方资源包提供的服务以及 Laravel 的所有核心服务都是通过服务提供器进行注册(register)和引导(boot) ...

  6. Laravel核心解读--控制器

    控制器 控制器能够将相关的请求处理逻辑组成一个单独的类, 通过前面的路由和中间件两个章节我们多次强调Laravel应用的请求在进入应用后首现会通过Http Kernel里定义的基本中间件 protec ...

  7. Laravel核心解读--异常处理

    异常处理是编程中十分重要但也最容易被人忽视的语言特性,它为开发者提供了处理程序运行时错误的机制,对于程序设计来说正确的异常处理能够防止泄露程序自身细节给用户,给开发者提供完整的错误回溯堆栈,同时也能提 ...

  8. Laravel核心解读--Console内核

    Console内核 上一篇文章我们介绍了Laravel的HTTP内核,详细概述了网络请求从进入应用到应用处理完请求返回HTTP响应整个生命周期中HTTP内核是如何调动Laravel各个核心组件来完成任 ...

  9. Laravel核心解读--HTTP内核

    Http Kernel Http Kernel是Laravel中用来串联框架的各个核心组件来网络请求的,简单的说只要是通过public/index.php来启动框架的都会用到Http Kernel,而 ...

最新文章

  1. mysql+php+服务器配置_php服务器配置(php+mysql+iis)步骤
  2. 用 Hadoop 进行分布式并行编程, 第 2 部分 程序实例与分析
  3. spring中getBeansWithAnnotation(Class<? extends Annotation> annotationType)方法
  4. 基于easyui开发Web版Activiti流程定制器详解(六)——Draw2d的扩展(一)
  5. axi时序图_深入 AXI4总线(E3)实战:制作一个 AXI 接口 IP
  6. linux搭建oracle脚本,Linux脚本自动安装Oracle
  7. 举例让抽象问题具体化:二叉搜索树的后序遍历序列
  8. windbg学习---?? 和 ?
  9. Flex请求Php端的奇怪现象
  10. WinRAR备份技巧 - imsoft.cnblogs
  11. RS485以及MODBUS知识积累
  12. 常见文件扩展名及简要说明
  13. 安卓期末大作业——单词本APP(源码+任务书)
  14. mysql里面除号写法_Mysql之常见函数
  15. 使用python编写LDPC编码
  16. kubenetes入门学习-十-service
  17. 03 - 大学生如何使用GPT
  18. 智能大数据SMART准则(读书笔记)
  19. 通过Demo了解AlertDialog的构造原理
  20. 车辆模型预测控制的概念介绍

热门文章

  1. 帖子回复——无限级分类
  2. 基于9款CSS3鼠标悬停相册预览特效
  3. 黑马程序员——GUI篇
  4. 在php中使用CKEDITOR在线编辑器
  5. POJ 1797 Heavy Transportation
  6. TNFBA治疗极早期中轴型nrSpA随机双盲试验后长达6年的放射学随访
  7. ANSI,Unicode,UTF-8网页编码的区别【转】
  8. 第一天:认识python
  9. 深入实践Spring Boot1.3 使用Spring Boot
  10. CKEditor的使用-编辑文本