laravel怎么学啊?有些东西当时看了感觉都会,但下次再遇到的时候,就又不懂了。
前言:
我也是一个learner,以一个过来人的口吻和大家交流,让大家见笑了。在此仅是和大家分享个人心得。
兴趣很重要
这是一个老话题了。其实不是说兴趣是最好的老师,而是你没有兴趣的话学的会很烦躁。因为编程其实是一件很复杂的事情,工程很大,细节很多,而且细节上是不允许有差错的。有的时候一个小bug能折磨你好几天,如果你对编程没有兴趣的话,早就崩溃了。作为一个程序员应该有的观念是,编程使我快乐,在收获快乐的同时能获得经济收入。所以不感兴趣的,建议趁早转行。
探索精神和无畏精神
laravel的学习者中,估计看过一遍完整源码的不多。不要觉得源码有多难懂,作者写了很多注释,很多注释在文档中是看不到的。用心看一下源码,会带给你不少启发和收获。学习要有探索精神,身边很多同学在上课的时候就光听,知道是什么,却不思考为什么,可以做什么,与其他知识有哪些联系。无畏精神,是指无畏权威,同时也不要把自己看的卑微。要知道你虽然不是权威,但你在通往权威的路上,那些人能做到的,你也可以做到。在laravel群中看到很多人问问题开口就是求大神,求教得虚心,但是不要把自己看的太卑微,他们只是比你先行一步。神是用来膜拜的,人是不可能成神的,你把这种水平看成神,就很难达到了。所以,去看laravel源码吧,把它当作是你几年前写的框架,后来失忆,现在只是去看自己过去的作品。
方法论
上面讲的比较虚,讲的是一般的学习态度方法,下面讲点具体的。学习方法当然是因人而异的,这里只是比较常规的。
夯实基础
laravel框架是一个比较高层次的php框架,学习之前最好是有一定基础。
- 知道什么是通信,什么是协议。
- 了解iso参考模型。
- 理解http协议,什么是浏览器,链接和网页又是什么。别小看这些概念,你能和一个文科生解释清楚这些概念吗?
- php是用来干嘛的,在web工作流中是何担当。laravel呢,是什么,为什么存在,能带来什么。
搞清楚自己在做什么事情,在整个的web中担任什么角色之后,就可以开始学习啦
- 学习php基本语法,标准库。
- 学习设计模式,常用算法
- 用原生php开发一个小项目
- 进阶php,熟读熟练《modern php》
学习laravel
- 理解laravel框架中各个重要概念(文档和一些教程)
- 了解laravel框架运行流程,框架设计思想(重要)
- 开发实战,解决bug不急着搜索,先根据错误异常调用栈找原因,可以粗读源码,定位问题。解决几次bug之后,你可能都把框架源码读了一半了。
- 阅读源码
阅读源码
特地讲一下,阅读源码的方法。laravel源码命名遵循语义化规则,大多类名变量名函数名都可见名知意。用整体到细节的思路去阅读,从index.php
开始,先了解每一个函数或者类是干什么的,等把细节走完,就知道为什么了。即按照广度优先的方式遍历下面这棵树(这是不完整的,只是举例告诉你方法,具体自己操作)
培养思维方式,学会学习的方法,才能事半功倍。只有理解才能记得深刻。
happy hacking~