PHP:风雨欲来 路在何方?

PHP4:奇迹背后

1995年时,Rasmus在用PHP写他de个人主页;今天,PHP成为风靡全球de脚本语言,越来越多de站点选择使用PHP,连Yahoo都放弃了自己de脚本而改用PHP支持它de网站.可以说,PHP是一个奇迹.我一直认为,任何奇迹背后都有它de原因.现在,就让我透过这个奇迹,来看看PHPde成功之道.

1 简单易用

PHPde入门门槛很低,它对使用者de要求微乎其微.学过C语言de人,使用PHP几乎不需要什么时间.它们de语法是如此相似,以至于我常常想,是不是在C语言变量前加个$就能改成PHP.这使得大量C程序员在网络脚本中选择了PHP.另外,比起ASPde组件系统和Java庞大de类库来,PHPde函数库要好学多了.在编程风格上,PHP更是自由,您可以使用N种风格来写您de脚本程序.这些特性使得PHP成为初学者de首选语言.抢占初学者市场是很重要de策略.如同任何人都会对自己de初恋记忆犹新一样,人们往往会对最初学习de语言有很深de感情.即使后来自己成长了,改用其他语言了,还是会时时记起最初学习de语言.在这点上,PHP做得很出色.

2 剪裁得当

PHP开发组是最了解网络de一群人,他们非常清楚用户要de是什么.PHP就是要做一个出色de网络脚本语言,而且,它只是要做一个网络脚本语言.PHP提供de函数集在网络方面相当强大,而且重点均专注于网络应用.像PHP中de无组件文件上传,超多数据库支持等特性都表现出这个特点.顺便说一句,PHP甚至支持ACCESS数据库.专注使得PHP在网络上表现出极其优秀de性能.有失才能有得.

3 支持强大

PHP有强大deOpenSource团体支持,在网络上有数以万计de开源相关代码.您可以整合几个现有程式来实现您de应用,也可以分析大师级de相关代码来得到提高.PHP还有很多扩展性de项目来增强PHP在某个方面de功能.像注重编程规范化和相关代码重用dePEAR,提供可编译模板技术deSmarty,甚至开发桌面程序deGTK.

分析完这几个理由,我可以看出,PHPde成功得益于PHP开发组de战略眼光.PHP提供了一个最小工作集,使用户能用最简单de方式高效地完成自己需要de应用.这正是初学者需要de.然后它通过方便de扩展来提供各个方面de解决方案,这样,您只需要学您要用到de那个领域de东西.当您涉及de领域越来越多时,您de水平也随之提高,当您熟悉了大多领域时,回头看看,会发现不知不觉已到山腰.PHP也提供了我一种学习态度.

ASP.net+J2EE:风雨欲来

网络脚本界de革新浪潮由MicrosoftdeASP.net首先发起.在ASP.net中,有一个很吸引人de东西——事件驱动机制.这在桌面编程中是很普通de概念,而在脚本编程中事件驱动意味着对服务器端de脚本(如PHP、JSP、ASP)和客户端de脚本(如JavaScript和VbScript)进行封装,使之协同工作.这样一来,编程就会变得异常方便.在.net环境中de事件驱动还有一个优势,就是您甚至可以不会任何服务器端脚本和客户端脚本,因为在ASP.net中,是可以直接使用C#这样de语言de——连$都不用加.这为MS阵营de传统程序员转向网络开发铺平了道路,同时,也使PHP在初学者市场上受到很大de打击.可以预见,以后de传统程序员转向PHPde将大为减少.不过ASP.net最大de问题在于它只能在Windows上运行,而现在大陆正在大力发展Linux.这使得PHPde生存空间似乎宽了点,但是——让我来看看Java吧.

Java也是一个奇迹,1995年发布第一个版本,现在形成三个版本,分别覆盖嵌入式系统(J2me)桌面程序(J2se)和服务器(J2ee)三大应用领域.更重要de是,Java得到了绝大多数程序员de认可,现在世界上最出色de计算机书籍多是以C 或者Java作为描述语言de.Java几乎像C一样,成为一种信仰.所以,我不要妄想Java阵营de程序员会转向PHP.同时,在同是开源和跨平台deJava面前,PHP丢掉了不少优势.J2ee中deJSP又在初学者市场对PHP造成相当de压力.

在曾经使PHP成功de初学者市场、易用性和开源支持等方面都受到挑战,而随着机器性能de不断提高,大家对效率de要求渐渐降低de情况下,可以说,PHP要在ASP.net和J2EEde狭缝中生存并壮大,是一件很不容易de事情.

而PHP本身还有不少问题.像低层用户过多.大量de开发者处于入门阶段,不知道如何提高自己,导致大量开源相关代码不规范和低效率,而又会又下一批初学者从这些糟糕de相关代码中学习,如此递归.另一方面,高阶用户却因为PHPde面向对象特性不完整等原因而不得不转向其他语言以开发大型应用.


PHP5:浓浓咖啡味

PHP开发组在今年年中发布了PHP5deBETA1,我可以从中看见PHPde反击.首先,PHP4de开发仍然马不停蹄,而且我可以肯定,PHP4de开发还将持续很长一段时间.这样做de目de是巩固既有用户,同时在将来dePHP4版本中逐渐融合部分PHP5de新特性,实现PHP4到PHP5de平滑过渡.

再来看PHP5de变化.在PHP5中,我看到了太多Javade影子.OO体系几乎是COPYdeJavade,这保证了PHP高阶用户不流失,使得他们能方便de使用最新de技术体系来架构自己de应用.另一方面,也为Java程序员使用PHP提供了方便,虽然这样de情况可能比较少.在完善了OO体系后,PHP具备了真正进入企业级市场de能力.然后PHP5也添加了不少自己de东西,像__get,来使这个体系更易用.不知道de是,这杯cappuccino是否会像Java般受欢迎呢?

从PHP5de改变中,我看出了PHP将来de方向.一是和JSP竞争,争取在某一些方面取代JSP,成为粘合JavaBeans和Servletde胶水.这要求PHP和Java之间建立更为紧密de关系.Zend小组正在参与JSR规范de指定.这个规范将使得您可以在PHP中直接new一个Java对象并调用它de方法.这样也能使PHP更快de进入企业级市场.另外,如果PHP编写de脚本能被直接编译成Binary Code在Jvm上运行de话,PHPde前景会好很多.另一个方向是做Java和.net间de集成,在一些大型de应用中整合已有资源.PHP4中我已经可以调用com组件和Java对象,相信在将来PHP5将对此提供更多de支持.

不管怎么样,无论是和J2ee和.net竞争还是融合,PHP要走de,将是一条满是荆棘de路.不过既然PHP已经一路风雨地走到了今天,我有什么理由不相信它能走得更远呢?

Best Wishes, PHP.

PS 这只是Easy对PHP将来发展de一点个人看法,可能不是很成熟,只是给大家一点参考.

Tags: , , , , , , , , , ,

Leave a Reply

You must be logged in to post a comment.