学习php开源项目的源码指南

yipeiwu_com6年前PHP代码库

一。先把源代码安装起来,结合它的文档和手册,熟悉其功能和它的应用方式。

二。浏览源代码的目录结构,了解各个目录的功能。

三。经过以上两步后相信你对这个开源的产品有了一个初步的了解了,那现在就开始分析它的源码吧。这一步我们开始分析源代码框架。例如入口方式是单入口还是多入口,页面之间的调用规则,能根据规则找出某个功能用到的页面。

四。熟悉源代码的代码写作风格,例如缩进方式,排版格式等。

五。熟悉一下源代码用到的数据库和表,可以参考它的技术支持文档。

六。经过以上几步相信大家已经对这份源代码有了更深刻的了解,不过这种了解还只是表面的,下来我们从6个方面具体的去分析它吧:
           1.入口构造以及页面调用方式的具体实现,如果阅读时看到工具类和工具函数,尽量去熟悉一下。这一步的分析可以学习到源代码的系统架构方式。
           2.分析源代码用到的工具类和工具函数,这样可以学到很多程序编写技巧。可以提升自己编程功力。
           3.结合一些安全规则,研究这个源代码是怎样实现安全方面的设计的。这样可以提高自己在安全方面的意识和功力。
           4.如果有模板引擎的话,研究一下源代码的模板引擎。大致从实现方式,效率,易用性等几个方面去考虑。
           5.研究系统的各个功能模块,这样既能学习编程技巧还能打开自己的编程思路,下次遇到类似的东东就心里有谱了。
           6.研究系统所用到设计模式,一样的功能实现,用到的设计模式可能相差很多,对比我们之前所作的东东分析设计模式,是提升我们驾驭代码的不二法门。
           7.研究源代码对访问压力,执行效率,系统效率,数据库查询的优化。

以上是个人的一些经验总结,这里抛砖引玉一下,大家有什么更好的方法,还请告之一下。

相关文章

PHP自定义序列化接口Serializable用法分析

本文实例讲述了PHP自定义序列化接口Serializable用法。分享给大家供大家参考,具体如下: PHP Serializable是自定义序列化的接口。实现此接口的类将不再支持__sl...

PHP冒泡排序算法代码详细解读

复制代码 代码如下: <?php $arr = array(345,4,17,6,52,16,58,69,32,8,234); $n = count($arr); for($i=1...

简单谈谈PHP vs Node.js

简单谈谈PHP vs Node.js

网络正在处于一个日新月异的发展时代。服务器端开发人员在选择语言的时候非常困惑,有长期占主导地位的语言,例如C、Java和Perl,也有专注于web开发的语言,例如Ruby、Clojure...

PHP获取指定时间段之间的 年,月,天,时,分,秒

核心代码: Class Utils { /** * format MySQL DateTime (YYYY-MM-DD hh:mm:ss) 把mysql中查找出来的数据...

PHP进阶学习之类的自动加载机制原理分析

PHP进阶学习之类的自动加载机制原理分析

本文实例讲述了PHP类的自动加载机制。分享给大家供大家参考,具体如下: 前言 我们在常见的PHP的主流框架中通常写好一个类只需写好相应的命名空间或直接实例化类就可以实现类的使用。而不需要...