标题:【Laravel系列8】走出 Laravel 的世界
走出 Laravel 的世界
还记得这个系列的第一篇文章是什么吗?当时我们写的是《进入Laravel的世界》。照理说,学习完了,日常应用更得心应手了,我们为啥又要走出呢?
结束是一个新的开始
对于我们的人生来说,就是在不断开始与结束的循环。在开始的时候,我们走进 Laravel 的世界。从头到尾并没有很深入的讲解每一个功能的使用,这些内容讲的教程太多了,我们通常只是简单地介绍一个功能的使用,然后就开始分析它的源码。想必你也知道了,我们要看的更多的是这个框架的设计思想,包括设计模式的应用、代码结构的组织、底层调用的路径分析等。我认为,在了解了这些内容之后,你再回头看框架已经封装好的功能,就会感觉非常简单。
这其实也是各位大佬们推荐通过源码阅读来学习的主要原因。不过一个人看代码的感觉相信你也非常清楚,那个困啊,那个懵啊。所以,我写这个系列的初衷也是非常自私的,希望通过分享的方式激励自己去深入的了解整个 Laravel 框架体系。
学习这条路是没有尽头的,Laravel 的学习结束了,它也应用在我们的日常业务开发中了。下一个起点又会是什么呢?相信不少 PHP 程序员可能都没怎么接触过高并发,毕竟 PHP 的适用场景是初创企业可以进行快速产品验证。往往到了一定规模之后,都会切换到 Java 等其它语言环境,比如最出名的淘宝。淘宝最早就是买的一个 PHP 商城系统,当规模做大之后,直接请的 Sun 公司的技术专家以及淘宝初创时的各位大牛们改为了 Java 。这件事在 《淘宝技术这十年》 这本书中都有讲过。
那么,PHP 就不能做高并发大流量的业务了吗?相信不少同学已经马上脱口而出了:”Swoole 可以呀!“。
好吧,不废话了,下个系列就写 Swoole 。但是,没有源码分析了哦,C 源码我可分析不动。我们就直接去学习 Swoole 中相关应用功能,以及一个和 Laravel 非常像的 Swoole 框架:Hyperf 。
Laravel 优雅吗
还记得我们一开始说过这个问题,同时网上很多人也都会去说它是一个优雅的框架。经过这段时间的学习,我相信你也有了自己的答案。特别是在面试的时候,你可以向面试官说出具体优雅在哪里了吗?
服务容器、门面、模型它们的实现过程其实都很复杂,但是呈现给我们的确实是优雅的感觉。我们只需要用很少的代码就可以实现很多功能。其实更多的感觉是它整个框架的结构,一些代码的使用方式真的很有 Java 的感觉。不过这也印证了一个道理,天下大同,不仅是语言,这些框架也在越来越接近,越来越类似。
如果你还要继续深入地学习一些编程思想,现在应该去看一看 Java 相关的框架了。体系更复杂,概念更多,但是也确实都是更流行更新潮的内容。是否合适用在 PHP 上呢?这个就仁者见仁,智者见智了,也超过了我的能力范畴没法给你答案了。
别的框架还学不学
这个嘛,你工作中用哪个呢?如果你用得是 TP 或者 Yii ,那就已经没问题了。你可以在这些框架中寻找 Laravel 中许多实现的影子。如果你本身就是在用 Laravel ,去拓展一下眼界也没什么不好。不说谁抄谁,思想都是开源的,这点你必须承认。很多实现或许在其它的框架中会有更好的解决方案,我们学习了解到了不也是一种收获嘛。
而且我现在有一个观点,那就是用市场上最热门的,然后学习 GitHub 上最热门的。最典型的例子就是 Laravel 和 TP 。在国内市场,TP 毫无疑问的是老大,不信自己去查,多少创业小公司和外包公司无一例外的全是 TP 。而平常要深入的学习呢?自然就是整个 PHP 生态中的老大 Laravel 。如果你现在用的,或者说整个市场上用得就是 GitHub 上最热门的,那么恭喜你,可以节省很多时间,比如说 Go 中的 Gin 框架,不过现在 Go 的框架还没有一家独大的,还处于百花齐放的状态,Gin 也只是目前的领先者而已。
不出项目教程?
我的天呀!(小岳岳语气)
还需要我来出具体的项目教程?这东西一搜一大堆了吧,用 Laravel 做博客的、做商城的、做官网的教程或者是像我这样分析源码的,感觉已经多得不能再多了,而且都是各位大佬的讲解,绝不会比我差,只能更好。但是请记住,官方文档和实战经验才是你的法宝,我们这些 CRUD 程序员能把数据库设计好了就完全足够应对日常项目了。毕竟最终我们都只是在做数据的操作而已。
好吧,立个 Flag ,写完 Swoole 之后我们来一起研究 MySQL、Redis 这些存储程序怎么样?到时候一起研究做什么项目怎么建合适的库表好啦!
总结
别的不多说了,期待我们下个大系列的见面吧。希望你在这段旅程中有所收获,更重要的是带来一些启发,有什么想说的就直接留言吧!