PHP,Java和.NET的过去,现在和未来)

PHP,Java和.NET的过去,现在和未来
本文对Web编程语言进行了一翻讨论,讨论的对象主要是PHP,Java和.NET平台上的VB.NET和C#。文章对四种语言在Web开发上的特点进行了简略的描述,并主要在性能方面进行了比较。

【51CTO精选译文】PHP,Java和.NET已经成为了未来五年内程序员必须具备的技能,而这三种语言(或者可以称之为平台)都在Web开发领域占有一席之地。当然,Web开发领域还有其他很多选择,比如Ruby,Python以及RIA技术等等。不过,单独将这三种主流的开发平台进行比较(在最新的9月编程语言排行榜上,Java、PHP、Visual Basic和C#分别处于第1、3、5、7名的位置。当然,排行榜所统计的领域不限于Web开发),也是有一定价值的。下面的这篇博文对于PHP,Java和.NET在Web开发领域的竞争性进行了一番探讨,文章有其主观片面之处,不过其中关于三种平台特点的比较还是很有趣的。以下是博文的原文:

昨天我和我的一位朋友对Web编程语言进行了一翻讨论,在此期间,我们讨论了各种编程语言(PHP,Java,VB和C#)以及它们在Web开发方面的竞争性。由于这个主题非常有趣,而且值得商榷,有必要对此做一下总结。

PHP:过去,现在和未来

首先我还是从我熟悉的PHP开始,它是我最喜欢的Web脚本语言,早在1998年,当我第一次接触PHP时,我就知道已经有许多高手开始使用PHP做有趣的事情,如搜索引擎优化。PHP的名字表示PHP超文本处理器,在当年来说虽然是一门朴素的语言,但功能还是蛮强大的。我一直认为PHP总有一天会发展成为一个应用程序开发语言(如今天的Java和C#)。幸运的是,现在我们可以看到ZendServer,PHP 5,Zend Framework和PHP-GTK。一个好的企业解决方案仅仅利用前面列出的工具在性能、稳定性和生产速度方面就可以轻松击败其它应用程序,虽然这些工具在商业层面还未被人们充分知晓,但据我所知,在许多学术会议上都会介绍它们,我相信在不久的将来,在商业环境中也会看到它们的身影。

关于社区参与,PHP在过去两年已经取得了巨大的进步。早在2003-2004年,许多程序员都转向了JSP,放弃了成熟、稳定的PHP框架,我差点也成为其中一员,当时我一致坚持使用PHP,工作了将近4个月,最后诞生了我的第一套用于快速网站应用开发的PHP组件。最后,我将我的模块移到CakePHP和Zend Framework中,联合它们的力量可以应付高流量的网站,最高峰值达到了上万个请求/小时,但CPU利用率一直保持在10%,内存1GB左右。

一个非常简单但很有说服力的例子是我开发的两个网站:www.yellowpages.com.lb和www.al-sharq.com,出于商业机密的原因,我不能在这里透露具体的数目。你可以访问这些网站,获得结合了Linux、MySQL、APC和Zend Framework的有关PHP的性能。

Java:企业级编程语言

Java功能强大,资源占用高,但服务器端资源利用率高,一个用JSP开发的网站一般至少需要2GB内存来缓存JSP文件,但它的性能比其它编程语言要好,一般来说一台服务器上不能容下50个网站,除非有8GB内存专门用于JSP容器。

Visual Basic:再见!

Visual Basic现在用的人越来越少,信不信由你,有可能到2015年就不存在了,微软在未来几年重点主要放在C#上,虽然它仍然用在操作系统层,但我看不出有任何理由程序员会继续使用它,除非像我那位朋友那样坚持认为Visual Basic是最简单的,因为他们懒得再学习另一门语言了。(对于Visual Basic的前景,虽然本文作者表示悲观,但很多开发者都持相反的意见。几个月前更新的Visual Studio 2010与.NET 4.0的beta版中,VB.NET和C#都得到了更新,具体可以参考51CTO之前发布的VS2010中两种语言特性的介绍和比对一文。)

C#:微软的赌注!

微软的C#汲取了Visual Basic,Java和PHP等多种语言的优点,具有Java语言的强大,Visual Basic的简单,PHP的低起点。虽然我算不上是C#专家,但我最近为一位客户测试了一套用C#开发的Web应用程序,结果让我大吃一惊,在安全方面C#引入了很多安全特性(特别是异常),在性能方面表现也令人满意,服务器每秒处理1024个请求将近两分钟才崩溃。通过测试,我对C#在运行时对异常的处理有更深的认识,并且程序员可以通过IIS的帮助对应用程序进行调整。微软未来几年肯定会将重心放在推广C#上,并希望能达到Visual Basic曾经创造的巅峰。

总结

如果你刚刚接触编程,并想往网站开发方向发展,那么PHP非常适合你。

如果你喜欢微软,那么学习C#。

如果你想进入企业级编程,那么学习Java吧

你可能感兴趣的:(java,PHP,.net,web开发,basic,语言)