作了6年多Java开发,暮然回首,发现PHP也听吸引人的。
最近化了70多大洋买了本号称“PHP圣经”的书才开始学习PHP,现在来和Java作一个简单的比较:
1,代码:Java更优美。PHP中有诸如“::”“->”“__set”的操作符,Java中是没有的。
2,面向对象:Java是面向对象的老牌编程语言,优于PHP。Java中一个文件就是一个类(除内部类),因此,Java的类结构层次更清晰。PHP类中的__get、__set和Java中的getter、setter比较,由于我不太熟悉PHP的框架也就不评论了,Java编程中getter、setter被广泛地应用于各种框架,简化了开发工作。
3,模式:Java有各种编程模式,有有面向接口编程,AOP,IoC。PHP介绍模式的书比较少。
4,框架:Java各种框架层出不穷,从MVC到ORM到Spring这样的多功能组件应有尽有。PHP有我所知道的ZendFramework。
5,功能:开发web应用,Java能实现的PHP都能实现,这点是PHP吸引我的地方。桌面应用和手机应用PHP就不行了。
6,部署:PHP比Java容易得多,而且市面上支持PHP的虚拟主机也多价格也比JSP主机便宜许多。对比使用PHP和java感觉就像window和linux,当然Java开发小型应用并不难。
总结,PHP经过这么多年的发展,正在走向成熟,也可以和Java配合开发出高效的分布式的应用。欢迎补充。

解决方案 »

  1.   

    你的议论有点意思
    1、Java 都在类中,所以不需要“->”来表示对象成员;php 中“.”被另作他用,所以就不能用“.”表示了。Java 有命名空间,所以也不需要“::”来表示方法的来源
    2、php 从一开始就是面向过程的,虽然后来应跳巢的 Java 程序员的需要,加入了面向对象的成分。但 php 的运行环境和方式确定了 php 不适合使用继承层次较多的类。PHP类中的__get、__set和Java中的getter、setter 作用相当
    3、模式是一种理论、一种方法,在 php 中也可以使用,但不能生搬硬套
    4、框架是应用程序模板。php 同样有各种框架,只是 Java 的应用范围远比 php 来的大。自然 Java 的框架要多于 php
    5、php 从一开始就是为 web 应用而开发的。简单易用是他的特点,而 php 的容错能力强的特点反倒比你们 Java 程序员批评为“不严谨”我热切的希望 php 不要走 Java 的老路
      

  2.   

    我看PHP圣经得出这个结论的,但是仅限于web app,现在Java也有了自己的脚本语言Groovy,感兴趣的可以试一下
      

  3.   

    以前弄过短时间的java,不过学的少不好找工作,正好php不错,就一直php了,java都忘光光了,java做小游戏挺有意思的,啥时候楼主给咱们弄些个免费的java小游戏啊
      

  4.   

    Java还是用来做Java EE开发比较好,PHP的简单易用点,语言只是工具。
      

  5.   

    php好像可以做android的app 从技术角度上说
      

  6.   

    又换啦?不是有 jsp 吗?
      

  7.   


    他的意思就可以是说jsp不完全是解释语言, Groovy是。
      

  8.   


    个人觉得为了j2ee学java的话, 简直是浪费, 还不如不学java, 
    学java就是去做嵌入式开发, java的发明初衷也是这样, 用java写web轻量级应用是牛刀杀鸡.
      

  9.   

    java发展得早, 成熟程度过于php是事实, 
    但php发展都只往一个方向走--->web, 各种框架应用都更专注于同一个方向,
    好比把j2ee这一块割出来独立发展一样。
    php无论什么人, 怎么写, 程序有多烂, 
    基于本身语言即收即放的特性, 很少会弄到服务器崩溃, 而java和.net就不同了,
    这是php优势之一。
      

  10.   

    本人两种语言都玩过... (包括 框架: Struts Spring CI Thinkphp  容器: EJB)..感觉上同意xuzuning的说法,各有长处. 在web这一块PHP会让你爱不惜手,  搞大野既话还是JavaEE比较优雅(语言比较严谨,各方面都比较规范,招人比较容易(劲果种)). 另外个人觉得语言只是工具. 不同的只是工具后面有各自的解决方案而已. 不同的只是你的选择. 文无定法,水无常态...