顶级PHP大师的开发原则( 二 )


◆缓存函数的运行结果
◆设置过期时间
◆缓存IE下载的文件
◆模板缓存技术
◆Cache_Lite
由于PHP作为动态语言的特性,缓存机制对于更新频率并不快的站点来说非常重要 。
5. 使用IDE, Templates和Snippets加速PHP开发 – Chad Kieffer
当Chad Kieffer从UI设计和数据库优化的工作中抽身出来的时候,他会在他的博客2 tablespoons上分享很多技术经验 。由于Chad多方面的全面发展,他经常可以发现其他程序员不能发现的问题,并形成相关经验,尤其是他开发网站 的方法 。他参与了网站开发的各个环节,因此他的建议对于提高网站开发的大局观非常有用 。
Chad认为使用Eclipse PDT(Eclipse’s PHP development package) 这样的IDE,同时使用一些模板技术和开源项目可以有效地提高PHP的开发速度 。
紧凑的计划,长长的to do lists以及deadlines让开发人员非常苦闷 。不过有些功能,比如Eclipse Templates,可以有效减少编码的时间和出错的几率 。
通常来说,任何项目都可以自动化,自动化程度越高,你完成项目的时间就越短 。花时间来开发使用频率很高的框架和模板,将会节省你以后更多时间 。同时,使用像Eclipse and the PDT package这样的IDE,你会发现效率得到明显提高,IDE可以自动闭合,补全分号并且可以在本地debug 。
 6. 利用好PHP的过滤函数 – Joey Sochacki
或许Joey Sochacki并不像Matt Mullenweg那样有名,但他也是一个经验丰富的开发者,并且通过他的博客Devolio分享了很多技术经验Joey发现在编写php代码的过程中有很多地方需要进行过滤,但却并没有太多的coder关注php的内置过滤函数 。
过滤数据是我们经常需要做的事情,但是很多功能丰富的PHP内置过滤函数却不为人知 。使用类似filter_* 的PHP内置函数,我们几乎可以处理所有的过滤任务,包括数据类型验证/URL/email和IP地址验证/特殊字符处理等等 。
过滤是一件复杂的事情,但是我相信joey的发现会给你很多启发,让你认识到PHP强大的过滤功能 。
7. 使用PHP框架 – Josh Sharp
对于是否应该使用Zend, CakePHP, Code Igniter, 或者 其他PHP框架,一直存在着很多争议,但是在web开发者的心中,他们有自己衡量的标准 。Josh Sharp自己创建了一家提供面包和黄油服务的网站,因此他对于使用PHP框架来开发网站有一定的经验 。他认为使用一个PHP框架来进行项目开发(use a PHP framework ),可以有效地节省时间,并且减少出错的几率 。为什么?因为他觉得PHP实在是太好上手了 。
PHP的易于使用有时候也有缺陷,因为并不严格的语法,经常会导致很多错误代码的诞生 。但如果使用一个PHP框架,出错的几率就会大大减少 。
PHP框架可以让你的代码结构更加规范,并且节省大量时间 。
8. 不要使用PHP框架 – Rasmus Lerdorf
与Josh的观点恰恰相反,PHP的鼻祖Rasmus Lerdorf却认为最好不要使用PHP框架,为什么?因为不基于框架的PHP性能更好 。Rasmus在Drupalcon 2008的演讲上,用“Hello World”的例子来对比了一些框架PHP和简单PHP之间的性能,结果显示框架PHP的性能要远远落后 。
9. 使用批处理 – Jack D. Herrington
Jack Herrington对PHP世界并不陌生,并且为大名鼎鼎的IBM developerWorks贡献过超过30篇的专搞,同时出版过《PHP Hacks》的书,因此他是一个真正的专家 。
Herrington推荐使用批处理和Cron来代替那些可以运行在后台的程序脚步,Web用户并不愿意在线等待你的处理过程,所以有些事情更适合放到后台来处理 。
诚然,在某些情况下,这有点大材小用了,但是你可以清楚地看到,使用Cron, MySQL, PHP面向对象的方法以及Pear::DB这些便捷的工具来创建一个批处理工具并不是一件复杂的事情 。
Jack认为使用cron, PHP和MySQL在后台处理一些任务,比起多进程的业务逻辑要划算得多 。
两种方法我都尝试过,我认为Cron非常符合”Keep It Simple, Stupid” (KISS) 的原则,它让后台处理变得简单 。与多进程的业务逻辑相比,它没有内存溢出的风险 。你可以创建一个简单的批处理脚本,并且在cron中运行,这个脚本会定时检查是否有任务需要处理,处理完之后就会自动退出,因此你不用担心是否有进程卡壳,或者陷入死循环 。
 10. 及时启用错误报告 – David Cummings
David Cummings有一个专门提供CMS软件服务的公司,并且获得过几次奖,他有非常丰富的PHP开发经验 。David曾经写过《two PHP tips he wished he’d learned in the beginning》,其中一点就是:及时启用错误报告,这会节省大量的时间 。


推荐阅读