`
morris
  • 浏览: 175928 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java在Web开发语言上败给了PHP

阅读更多
PHP的主要语言开发者之一、Zend公司的创始人之一Andi Gutmans最近在blog中直言不讳地批评了Java语言。他指出,目前Java厂商试图在JVM上提供动态语言实现的路子根本不对,Java已经输掉了Web开发语言的战争,PHP是事实上的标准和胜利者。

Gutmans的这篇文章在技术界引发了强烈争议,很对人对此有不同的意见,我在这里就阐述一下我对PHP和Java两种语言的看法。

首先对比一下PHP和Java的异同,PHP是一种解释执行的脚本语言,语法和C语言类似,易学易用,不懂电脑的非专业人员稍经学习也能使用PHP.而Java要先编译成Class文件,然后在Java虚拟机上执行,Java开发需要熟悉Java语法以及一些核心的架构,从而实现一种可复用的、跨平台的软件,Java比PHP要难学的多。

实际上,从技术架构来说,Java语言相比PHP有明显的优势,Java使用的是面向对象的系统设计方法,而PHP还是采用面向过程的开发方法。PHP只能实现简单的分布式两层或三层的架构,而JAVA可以实现多层架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。例如Struts就是利用Java的web开发技术实现了MVC的设计模式,而在业务逻辑层也有Spring框架,数据库持久化层有Hibernate等框架。这些框架可以方便开发者高效、合理、科学得架构多层的商业应用。从数学运算和数据库访问速度来讲,Java的性能也优于PHP.实际上,对于跨平台的大型的企业应用系统来讲,Java几乎已经成为唯一的选择(微软.NET不支持跨平台),但是在于Web网站应用开发来讲,Java却面临着被PHP边缘化的危险,几乎所有的虚拟主机都支持PHP+MySQL,而支持Java的却少之又少,在资源上,网上有不计其数的PHP资源,很多著名的大型网站(例如Facebook、Mediawiki等)都是基于PHP的,而成功的Java网站却寥寥无几,这又是什么原因呢?

Java的理念是“一次编写,到处运行”,Java在应用框架底下的架构是无与伦比的,远胜过其他任何语言,Java的框架利于大型的协同编程开发,系统易维护、可复用性较好。而PHP很容易自学,让热备能快速简洁地编写代码,适合于快速开发,中小型应用系统,开发成本低。在调试、发布上,PHP也较Java简单。

理念上的不同导致了Java和PHP在Web应用开发上显示了不同的结果,尽管Java的数学计算和数据库访问都有优势,架构也相当完美,但是PHP却可以简单轻松地支持高强度Web访问,能够快速开发应用,支持PHP的虚拟主机多如牛毛,使得用PHP开发一个网站比用Java开发一个网站要快得多,容易的多。Java所拥有的优点只适合传统的以软件项目为核心的开发模式,而PHP更适合于以客户为核心的SaaS的开发模式,因此,PHP目前在Web网站开发的优势完全是因为Web网站开发的特殊性而导致的,并非编程语言特性所决定。

因此,PHP在Web网站开发语言的战争中已经慢慢将Java抛在了后面,Java要想在Web网站开发上奋起直追,的确应该多听听Andi Gutmans的意见,彻底改变一下思路才行,否则两者的差距只能是越来越远。

另外,虽然在国际上LAMP(Linux+Apache+Mysql+Php)架构已经占领了统治地位,但是在中国国内还有一个怪胎,就是基于微软的Windows Server+IIS+SqlServer+ASP/ASP.NET的架构,从理论上说,微软的这一套架构也能实现不错的性能,只可惜Windows和SqlServer价格不菲,整个架构在性能上比起LAMP不仅没有什么优势,反而还有不少劣势,因此微软的这一套家伙在国际市场上吃不开。而国内使用微软盗版则可以忽略成本,而ASP的易学易用性不逊于PHP,甚至连IT外行都能够使用,因此在国内也有不小的市场。但是随着中国在保护知识产权方面的日趋完善,免费的LAMP依旧是未来的趋势。
4
5
分享到:
评论
2 楼 pdreamer 2008-08-26  
楼上兄,淘宝前台用php,据说也用了java,myspace用.net
1 楼 hilliate 2008-05-25  
仔细想了想,也不尽然,虚拟主机毕竟都是小网站在用,大网站用虚拟主机?开玩笑啦。
而且使用java来做web应用的大网站其实不少。例如淘宝、myspace等等。
java的强项倒是更体现在逻辑流程的控制上,所以多数的企业级管理信息系统用java居多。

相关推荐

    Java Web开发完全掌握

    《Java Web开发完全掌握》主要内容简介:java是目前最受欢迎、应用最为广泛的跨平台程序设计语言之一。全书详细讲解了java web开发的相关技术知识,主要包括javascript、jsp、javabean、表达式语言(el)、jsp标签库...

    java语言开发web课程设计新闻发布系统源代码.zip

    java语言开发web课程设计新闻发布系统源代码java语言开发web课程设计新闻发布系统源代码java语言开发web课程设计新闻发布系统源代码java语言开发web课程设计新闻发布系统源代码。java语言开发web课程设计新闻发布...

    Java_Web开发教程.pdf

    Java_Web开发教程.pdfJava_Web开发教程.pdfJava_Web开发教程.pdfJava_Web开发教程.pdfJava_Web开发教程.pdf

    Tomcat 与Java web开发技术详解(孙卫琴)

    由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此本书讲解的Java Web应用例子可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。随书附赠光盘的内容为本书范例的源程序,以及本书...

    几种WEB开发语言比较

    几种WEB开发语言比较 PHP Java ASP JSP 进行了比较

    Java web开发技术Java教程

    有关Java web开发技术\资料\Java教程 有关Java web开发技术\资料\Java教程 有关Java web开发技术\资料\Java教程 有关Java web开发技术\资料\Java教程 有关Java web开发技术\资料\Java教程 有关Java web开发技术\资料...

    java web接口开发demo

    java web接口开发demo 详细地址:http://blog.csdn.net/zxw136511485/article/details/51437115

    Tomcat与Java.Web开发技术详解(PDF)

    本书详细介绍了在最新Tomcat 5版本上开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识,Java Web开发的高级技术,Tomcat与当前其他通用软件的集成,以及Tomcat的各种高级功能。

    Tomcat与Java Web开发技术详解 孙卫琴 源码

    由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此《Tomcat与Java Web开发技术详解》讲解的Java Web应用例子可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。随书附赠光盘的内容为...

    java web开发实战1200例 第二卷 源码

    《Java Web开发实战1200例(第2卷)》以开发人员在项目开发中经常遇到的问题和必须掌握的技术为核心,介绍了应用Java Web进行程序开发的各个方面的知识和技巧,主要内容包括流行组件应用、数据库应用、图表统计、Ajax...

    Java Web 整合开发 完全自学手册 源代码

    Java Web 整合开发 完全自学手册 源代码

    深入体验Java_Web开发内幕—核心基础 完整版 pdf

    深入体验Java_Web开发内幕—核心基础 pdf,完整版本,字迹清楚,需要的下吧

    Tomcat与Java Web开发技术详解(第2版)及其源码

    《Tomcat与Java Web开发技术详解》语言深入浅出、通俗易懂,无论对于Java Web开发的新手还是行家来说,《Tomcat与Java Web开发技术详解》都是精通Tomcat和开发Java Web应用的必备的实用手册。《Tomcat与Java Web开发...

    Java.web整合开发王者归来整本书内容及光盘源码

    由于上传大小限制50M,因此分享的是我的百度网盘链接,下载后文本文件里有链接,包括Java Web整合开发王者归来整本书326.5M 的PDF文档以及54.7M的光盘源代码 本书简介: 资深Java程序员耗时一年时间写作,十年开发...

    java web 整合开发 完全自学手册 光盘资料-C02

    java web 整合开发 完全自学手册 光盘资料 源代码partI 1.本书2~24章所附代码的运行环境 操作系统:Windows 2003、Windows XP Professional,或者Windows 2000 开发环境:JAVA5、MyEclipse 数据库:MySQL Web...

    完整版Java JSP web开发教程 09_JSP表达式语言(共23页).ppt

    完整版Java JSP web开发教程 09_JSP表达式语言(共23页).ppt 完整版Java JSP web开发教程 10_自定义标签(共20页).ppt 完整版Java JSP web开发教程 11_JSP 标准标签库(共21页).ppt 完整版Java JSP web开发教程 ...

    魔乐先生 JAVA-WEB开发实战笔记pdf格式

    市面上大多JAVA培训教程以J2SE为主,J2EE教程凤毛麟角,MLDN本次出品《魔乐先生 JAVA-WEB开发实战》 突出了JAVAWEB基础语法的讲解,从JSP的基础知识和基本语法入手,循序渐进、深入浅出地介绍了JSP的各种技术, 并配...

    《Java Web 开发与实战》PDF 下载

    《Java Web 开发与实战》PDF 下载

    Java EE Web开发实例精解完整光盘

    JAVA EE Web应用系统从逻辑上可划分为表现层、业务层和持久层,为了使读者对JAVA EE编程技术获得全面系统的了解,《Java EE Web开发实例精解》以JAVA EE Web应用系统的逻辑加构为主线,通过多个典型工程实例对上述三...

Global site tag (gtag.js) - Google Analytics