Laravel底层原理系列
Laravel 从学徒到工匠精校版 地址:https://laravelacademy.org/laravel-from-appreciate-to-artisan
Advanced Application Architecture With Laravel 4》的中文精校版,这本书中文可以译作 《从学徒到工匠 - 基于 Laravel 4 进行高级应用架构》,主要讲了 Laravel 底层实现原理,以及如何基于 Laravel 进行大型应用设计和架构,作者是大名鼎鼎的 Laravel 框架作者 Taylor Otwell。
这本书其实网上已经有人翻译过了,为什么学院君还要花费心力重新翻译这个版本(姑且叫做精校版吧),是因为这本书是基于 Laravel 4 写的,里面的很多示例在 Laravel 5 中已经不适用,而现在显然是 Laravel 5 大行其道的时代,所以有必要基于 Laravel 5 重新编写书中所以示例,以及将一些 Laravel 5 中新增的,Laravel 4 中被废弃的功能拿出来给大家说道说道,否则新手直接去看原来那本书或者翻译的版本难免会有困惑。另外,在某些术语的翻译上做了一些优化,让大家更容易理解,还有吐槽下, Taylor Otwell 大大写的东西有的时候真的感觉对新手不友好啊,所以我会在一些地方根据自己的理解对语言做了一定的润饰,希望可以以通俗易懂的方式呈现在大家面前。
以上,就是重新翻译这本书的初衷了,即便如此,新手看起来可能还是有些吃力的,毕竟我不能完全脱离原书,所以有什么问题,欢迎与我交流。
原书分的很碎,有时候一个章节可能就一两段文字,所以我将原书以章为单位对原书的目录结构做了适当的调整,但不影响整体的完整性和前后的一致性,下面是整理后的目录结构:
0、作者自序
1、依赖注入篇
2、服务容器篇
3、接口即契约篇
4、服务提供者篇
5、目录结构篇
6、应用架构篇
7、框架扩展篇
8、设计原则篇
Laravel底层原理系列的更多相关文章
- 【学习底层原理系列】重读spring源码1-建立基本的认知模型
开篇闲扯 在工作中,相信很多人都有这种体会,与其修改别人代码,宁愿自己重写. 为什么? 先说为什么愿意自己写: 从0-1的过程,是建立在自己已有认知基础上,去用自己熟悉的方式构建一件作品.也就是说, ...
- 【学习底层原理系列】重读spring源码3-加载beanDefinition的方法obtainFreshBeanFactory
obtainFreshBeanFactory()方法概述 定义BeanFactory,并加载以下两种bean的定义,装配到BeanFactory: 1.配置文件中定义的bean 2.通过<con ...
- (前篇:NIO系列 推荐阅读) Java NIO 底层原理
出处: Java NIO 底层原理 目录 1.1. Java IO读写原理 1.1.1. 内核缓冲与进程缓冲区 1.1.2. java IO读写的底层流程 1.2. 四种主要的IO模型 1.3. 同步 ...
- 【T-SQL进阶】02.理解SQL查询的底层原理
本系列[T-SQL]主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础]02.联接查询 [T-SQL基础]03.子查询 [T-SQL基础]04.表表达式 ...
- JavaScript是如何工作的: CSS 和 JS 动画底层原理及如何优化它们的性能
摘要: 理解浏览器渲染. 原文:JavaScript是如何工作的: CSS 和 JS 动画底层原理及如何优化它们的性能 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 这是专门探索 J ...
- 并发之volatile底层原理
15.深入分析Volatile的实现原理 14.java多线程编程底层原理剖析以及volatile原理 13.Java中Volatile底层原理与应用 12.Java多线程-java.util.con ...
- 理解SQL查询的底层原理
阅读目录 一.SQL Server组成部分 二.查询的底层原理 本系列[T-SQL]主要是针对T-SQL的总结. T-SQL基础 [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- JMM和Volatile底层原理分析
JMM和volatile分析 1.JMM:Java Memory Model,java线程内存模型 JMM:它是一个抽象的概念,描述的是线程和内存间的通信,java线程内存模型和CPU缓存模型类似,它 ...
- 【底层原理:深入理解计算机系统】#1 一切从"hello world"说起 (一)
计算机系统是由硬件和系统软件组成的,他们共同工作来运行应用程序.虽然系统的具体实现方式随着时间不断的在变化,但是系统的内在概念却没有改变的. 所有的计算机硬件和软件有着相似的结构和功能.这个系列专题便 ...
随机推荐
- java8 stream/optional个人测试demo记录
备忘记录 package cc.ash; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConst ...
- input和textarea的区别
区别: <textarea>标签是成对的,有结束标签进行闭合,标签的内容写在标签对中间:<input>是单个标签,标签的内容通过 value 属性设置: <textare ...
- static和assets的区别
assets和static两个都是用于存放静态资源文件. 放在static中的文件不会进行构建编译处理,也就不会压缩体积,在打包时效率会更高,但体积更大在服务器中就会占据更大的空间 放在assets中 ...
- 快速取出选中checkbox的值
原料:jquery 直接上代码 html代码 <html> <head> <title>$Title$</title> </head> &l ...
- Vue3.0+TypeScript
序言 资料 https://www.cnblogs.com/chanwahfung/p/11968205.html
- jQuery文档操作之插入操作
append() 语法 父元素.append(子元素) 解释:追加某元素,在父元素中添加新的子元素.子元素可以为:string/element(js对象)/jQuery元素 代码如下: var oli ...
- AcWing:148. 合并果子(哈夫曼树)
在一个果园里,达达已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆. 达达决定把所有的果子合成一堆. 每一次合并,达达可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和. 可以看出 ...
- MS11-080提权
前提是你渗透进入了一台服务器 这是微软11年的第80个漏洞 每一个漏洞都有一个对应的kb(补丁) 这里我们直接在kali里面搜索 root@kali:~# searchsploit ms11- --- ...
- 备忘录:“#ifdef __cplusplus extern "C" { #endif”的定义
看一些程序的时候老是有“#ifdef __cplusplusextern "C" {#endif”的定义,搞搞清楚是怎么回事: Microsoft-Specific Predefi ...
- 后盾网lavarel视频项目---lavarel中的tinker是什么
后盾网lavarel视频项目---lavarel中的tinker是什么 一.总结 一句话总结: 是用来调试laravel,可以打印变量或对象信息,显示函数代码,对数据库写入和查询数据 laravel中 ...