过去一年时间写了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. react native 报错:cannot read property 'length' of undefined
  2. (转)Thread的中断机制(interrupt)
  3. [LeetCode] Majority Element
  4. 使用隐式Intent打开系统浏览器的百度网页
  5. kafka 集群_单机版kafka集群部署
  6. .NET 数据库缓存依赖策略实现
  7. Android 3D emulation 架构理解
  8. 合肥天鹅湖万达广场机器人_合肥租房价位及租房地理位置推荐
  9. 即时通讯推送保障及网络优化详解(一)
  10. 软件测试的学习之路------软件质量
  11. LeetCode 688. “马”在棋盘上的概率
  12. SQL Server 轻松解决令你头疼的sa登录
  13. html 网页整体的背景色,HTML 背景
  14. system占用cpu过高
  15. 信息系统集成监理费收取标准_信息系统工程监理与咨询服务收费参考标准起草说明...
  16. 广告投放系统网络基础架构简要描述
  17. 嫌我们理科生不够浪漫?你有一份音乐数学入门指南待查收
  18. amd r7 2700u linux,锐龙r72700u相当于 r72700u相当于什么水平?
  19. 如何精确计算 LoRaWAN 终端电池寿命
  20. java pv uv 统计_shell统计pv和uv、独立ip的方法

热门文章

  1. Socket相关操作超时
  2. 2.请求安全-- MD5的必要性以及实际应用场景
  3. 基于Cmail的邮件收发限制说明
  4. Repeater简单应用(动态改变内部样式)
  5. Android监视器概述
  6. 博客专题计划:《在实践中深入理解常见网络协议》
  7. ubuntu 13.04 找回丢失的grub2
  8. mysql的Innodb为什么使用B+树
  9. 云原生分布式应用运行时 Dapr 在阿里的实践
  10. Influxdb中Select查询请求结果涉及到的一些数据结构