JavaEE与PHP - 为什么这么多人认为Java更好?

ala*_*arr 24 php spring hibernate codeigniter java-ee

我需要对网络项目的技术使用进行评估,该团队由4名开发人员组成,项目时间为1年.

我对php更熟悉,但客户端要求我用JAVA EE做.

我对Java及其框架总是有同样的看法:

  • 这么多的xml和类都是为了做简单的事情.在codeigniter我要使用3个文件(模型,视图和控制器)与hibernate + spring + JSF我需要超过10个文件!
  • 滥用服务器.javascript代码失去了重要性,现在它并不好.当然我们可以添加javascript代码,但似乎"java web guys"更喜欢在服务器而不是客户端上做东西.
  • 不好看的应用程序.Richfaces似乎是几年前的网络.
  • 当我看到像liferay,alfresco这样的java应用程序时,它们看起来很沉重而且很慢.

我想我可能有点困惑,因为很多人和大公司继续在网上使用JAVA.为什么?这是关于整合?

另一方面,Java比PHP快,但JAVA的服务器需要大量内存(更昂贵).在具有许多请求的服务器中,我们可以使用像php这样的语言来改进,每个进程的时间更长,每个进程的内存更少,因为服务器永远不会因为内存而崩溃.有时JAVA服务器可能因内存而崩溃,实际生产环境中的平均响应时间将大于php.

我对Codeigniter很满意,为什么这么多人认为Java更好?

提前致谢,

阿尔贝托

wem*_*emu 28

好吧,我没有使用CodeIgniter,所以我的比较已经不完整了.

问题一是:他们为什么要求Java?通常,大公司只为生产系统提供Java或.Net环境,因此他们可能无法让人们高效地运行PHP应用程序.我知道它并不复杂,但维护人员定义了他们正在运行的东西.

在人们谈论语言及其功能之后,当必须讨论第一个业务用例时,没有任何框架可以为您节省大量的时间来计算它.大多数编程语言都会以某种方式解决问题.

Java不仅仅是RichFaces或JSF.有很多可供选择.很多.没有优势.

经常被遗忘的东西是工具支持.Java附带了一个JVM,可以详细分析它对内存,垃圾收集器,线程等的作用.Java中的Profilers允许您在几小时内识别几乎任何内存泄漏.大多数JVM监控实时工作(开销约为5%).谈论工具:重构支持远远超出了PHP IDE的功能.

如果第一次看Java与PHP相比看起来像大象和马,那你就是对的.(好的,php的标志是大象,完美的比较......).马可以更灵活地转弯,但是它们可能不会携带那么多.我认为从语言角度来看,Java仍然比PHP更先进.命名空间,类,类型 - 安全.这些在PHP中可用,但仍然很新.

像Spring这样的框架允许您在架构级别上利用您的应用程序,而不仅仅是库.

我不是最大的Java EE粉丝,所以我不会抱怨.

一个简单的方法可能是Tomcat + Spring + SpringMVC和GUI的模板引擎.如果您针对更高速度的客户端行为(还有很多更多),还有GWT(Vaadin).

Java中也有轻量级方法.我同意Java中的标准确实有更多的脂肪倾向.

根据我的经验,与PHP相比,Java没有任何重大缺陷.语言选择只会影响项目的成功,如果人们的知识少于所需知识,并且花费太多时间学习东西.并且试图找到关于Java的正确书籍可能是一个独立的项目:)(算作优势)

但我毫不怀疑PHP会允许你完成这个项目.

在选择技术之前,我宁愿研究目标和要求.这通常意味着或简化了决策.

我希望我在这里至少回答了一个问题:)

  • 使用Vaadin,您可以使用Java构建出色的GUI,而无需使用JavaScript - 所有这些都是开箱即用的.请查看示例:http://demo.vaadin.com/sampler (2认同)