想要成为PHP高手的十个建议

勇哥对我说,我写的都是道,但是大部分人需要的是术。我恍然大悟,想想这有道理,道理虽然是根本,但是术还是要有的。特别推出一针灵系列,顺手弄个耸动标题吸点粉,请轻喷。

PHP使用简单,上手特别的快,这导致使用者水平参差不齐。而且因为诞生时间太久,有很多冗余的东西,缺点堆堆的,这里不展开。有太多技巧可以提高水平,今天先说十个,有些可能非常颠覆你的想法,但请听听我的看法。

1。熟练使用SPL,这是基础

PHP本身是一门工具,SPL是工具中的工具。SPL的使用会大大简化你的设计,我发现N多程序员无法回答和SPL相关的问题,这是致命的。例如:SplSubject接口可以轻松帮助你做出一个观察者设计模式,SPL系列迭代器满足99%的使用场景,虽然你可能不写自动加载,但是spl_autoload干嘛的总要知道吧。

2。参数需要注入,不要和环境发生依赖关系

你写的代码承载的是你的业务,业务是可以工作在CGI或者CLI下的。看到太多的Sample中控制器会直接使用$_GET,$_POST之类的环境变量,这是致命的。如果你的模型层也有直接获得GPC,恭喜你,重构已经提上议事日程,因为你的业务根本无法再CLI下执行,请要把环境变量和业务参数的绑定设计成注入的关系。

3。不用写任何一行注释,熟练运用PHPDoc

代码本身是不用注释的,难道你会在一个user变量中保存一个order讯息么?当然不会,因为他叫user呀,代码本身应该如同说话一般流畅,在写代码的同时最好打开一个词霸。而PHPDoc是你的备注,强化代码对使用者的帮助,让所有的“人”(例如:IDE)明白你的意思,静态代码检测是一切效率的基础。

4。任何模板引擎都是垃圾

这是我的个人观点,为什么要使用另外一种DSL去描述模板呢?除非你能将模板工作交给一个专门团队做,而且用的引擎应该是跨语言的。实际生产环境中,只要有静态页面,和JS的模板引擎足够了,除非你要为SEO做服务。额外说一下,大量的模板引擎把模板和缓存有绑定在一起,灾难加灾难等于毁灭。SO,我从不会面试提问任何Smarty的问题,因为那就是一坨屎。

5。使用PHP编写路由而不是依赖HTTP容器

这个问题和参数注入类似,很多代码中包含的.htaccess其实是很无厘头的,路由也是业务的一部分(除了锁定入口)。我只想问一句话,你的代码难道不想运行在nginx,IIS,light







































北京白癜风医院医师
白殿疯病那家医院看的好



转载请注明:http://www.jiaju1314.com/xxzl/10006.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了