Slim研读笔记一之如何读框架

来源:互联网 发布:java 泛型编程 pdf 编辑:程序博客网 时间:2024/05/19 15:40
源码研读是一条十分小众的技术路线。在这条路上,99%的人会找寻各类借口麻痹自己,最终放弃。唯有1%的人,不忘初心,持之以恒,成就卓越。
                                                                                                                                            ——尼古拉斯.浩.卜钫其

Slim是一款PHP微框架,可以帮助你快速编写简单但功能强大的web应用和API。Slim具有支持HTTP路由,中间件,PSR-7支持,依赖注入等现代PHP所具有的通用功能。

重点是什么?

Slim 是一个理想的工具,用来创建销毁、重用或发布数据。Slim 也是一个用来快速构建原型的好工具。呃,那啥,你甚至可以用 Slim 来创建带有用户界面的功能完整的 web 应用程序。更重要的是,Slim 速度超快,代码很简单。实际上,一个下午你就能读完并理解它的源代码!

在它的核心,Slim 是一个调度程序,它接收一个 HTTP 请求,调用一个适当的回调例程,然后返回一个 HTTP 响应。就这样简单。

更为详细的介绍请参考Slim官网:http://www.slimphp.net/docs/
在熟悉一个框架前,最好的学习方式是读其官方文档,两遍以上最好,对框架功能进行一个详细的了解。然后结合文档使用框架来开发一款简单的应用。

如何阅读这份文档

如果你是第一次接触 Slim,我建议你从头到尾先阅读一遍。如果你已经和 Slim 混得比较熟了,你可以直接去阅读你想看的部分。
本文档从解释 Slim 的概念和架构开始,而不是贸然开始讲述请求和响应处理、路由、错误处理这些特定的话题。特定的话题。
ps:柚子曾使用slim写过接口,所以这里还是直接跳过基础的文档章节,直接进行惊心动魄(kuzaowuwei)的源码阅读之旅吧!

如何读框架?

柚子采取自顶向下的阅读方法,先读大模块,譬如:依赖注入容器,路由,中间件等。然后再细分功能:研读错误处理,日志,HTTP缓存,模板,CSRF保护,Flash Messsages等第三方组件。这就类似于幼童爬树,站在树根下,初感慨树之高大茂盛,然后爬上数干,方才对全局有个大致了解,然后逐个的去看其他树枝、树叶,看的越多,也就越对树之全貌有更深刻的认识。这与我们在工作中意图扩展类时,所采取的从树叶了解树枝的方式刚好相反。

柚子在学习框架时,会以思考为主,思考代码的实现思路并反思自己以前实现方式的不足之处。思考代码的设计思想,采用了哪些设计模式,想一想以后在相同场景下自己会如何实现代码。






原创粉丝点击