新年想法:PHP迈向Java
如果打开PHP领域内的邮件列表,拨开尘嚣,深入下去,看着PHP核心发展小组成员的讨论,你会有一种奇怪的感觉,讲不清楚,反正就不像是在讨论PHP的问题。
一直以来,PHP的发展都是照着头痛医头,脚痛医脚的办法:谁有个主意,或需要个什么东西,平台又没有的,就找出个解决办法;或者拿到发展小组内讨论;或者偶尔的,放在内部列表里。找出答案后,放在代码库里。
这种开发进程产生了一些杂乱的函数,并且带来了很多需要特别小心处理的麻烦 -- 既要完善它又要顾及兼容性。
然而,一些富含争议的PHP最精彩的功能毕竟已经脱胎而出了。例如:
* Object orientation in PHP 4 OO加进PHP4有些晚了,但总算有了。虽然还有很多问题,但毕竟给很多PHP开发人员带来了好处,更重要的是促进了PHP5的进一步发展,而后者,为带来更多的新特征打开了大门。
* SimpleXML 也许是命名错了,现在还有很多限制,离真正能用还需要几次的版本升级。但是,至少在我看来,PHP5可以操作XML了。没有它,我们很难对付DOM,当然,尽管可以用其他相关的函数,但是,代码起码要多三倍。
* Type hinting (类型提示 ) 又是一个出来得太晚的东西。在真正应用之前需要作些小调整 (比如 允许传递NULL值和支持数组),但要是没了它,从维护的角度来看,(PHP) 语言就显得太弱了。
总的来说,PHP的发展一直以来都循着这样的模式:一方面是粗糙的自发性开发(”先解决眼前问题,后果以后再说“),另一方面是改进认为值得改进的部分,其他部分就让它自生自灭(幸亏还没全死掉)。
最近有关命名空间的讨论就充分显示了今天PHP存在的问题:不是因为无休止的内部讨论,不是因为信噪比,问题在于有人就是不愿意拿起枪来,瞄准,射击。如果这样继续下去,我担心有一天当我们醒过来时,我们会面临Java同样的问题:所有决策由委员会来决定,革新死掉了,坦在角落里的东西无人理睬。
补充:Php教程,Php常用代码