【问题标题】:Why Java has so many editions unlike C#?为什么 Java 有这么多与 C# 不同的版本?
【发布时间】:2012-02-09 21:18:51
【问题描述】:

我决定学习另一种语言,目前正处于挑选阶段。

目前正在研究 Java 和 C#,但倾向于 Java,因为它是跨平台的。我将主要构建基于 Web 的应用程序,但 Java 版本的多样性让我感到害怕。 Java EE、SE、ME、FX,它们有什么区别?使用一个对另一个有什么好处吗?

好的,FX 适用于台式机,ME 适用于移动设备,SE 和 EE 相同,但一个用于“商业”,另一个则不是。那么,例如,如果我学习 SE,那么切换到 EE 需要什么?还是外汇?我的问题是我无法真正理解为什么 SE、EE 和 FX 是独立的产品?它们都运行相同的 JVM,并且都可以执行相同的结果应用程序。那为什么要分开呢?

【问题讨论】:

标签: java jakarta-ee javafx


【解决方案1】:

把他们想象成这样一个

  • ME ~= 紧凑型框架
  • SE ~= .NET 客户端配置文件
  • EE ~= 完整的 .NET 框架(以及一些额外的部分 :)
  • FX ~= Silverlight

这不是一个精确的比较,但它是一个足够接近的开始......

【讨论】:

    【解决方案2】:

    它并没有那么具有破坏性。

    • Java SE 是普通应用程序的标准。
    • Java ME 用于移动电话,例如没有浮点的子集。
    • Java EE 是针对 Web 应用程序和 Web 服务器的 Java SE 的补充。
    • Java FX 是 Fl​​ash 播放器的替代品,但现在具有 java 绑定/集成。

    因此,Java SE 构成了基础。 Java EE 适用于 Web 应用程序。

    未来 java 将获得模块化系统,区别仅在于库级别。

    【讨论】:

    • 但是,我们可以说,Java 版本是建立在相同的公共基础之上的,而版本只是该基础上针对某些行业领域的附加库/框架?
    • Java FX 是一款自带脚本的产品,但集成在 Java SE 中。 Java ME 是一个剥离版本,适用于具有非 X86 CPU 的低级移动设备。但是,是的,Java EE 和 Java FX 是附加的。
    • @JoopEggen:请注意,Oracle 放弃了 Java FX 脚本,转而使用纯 Java API。
    • 另请注意,EE 不仅适用于 Web 应用程序,还适用于其他类型的服务器端应用程序。
    【解决方案3】:

    当您说编辑器时,我认为您的意思是 IDE(集成开发环境)。 Java 有这么多编辑器而 C# 没有的原因是因为 Java 是开源的,而 C# 不是。因此,您将在 C# 中找到的唯一真正优秀的 IDE 称为“visual studio”(它不是免费的)

    我强烈建议您使用 java,因为几乎所有工具都可以免费使用,甚至是您部署应用程序的应用程序服务器。

    不要害怕 java 版本,如果你想构建 web 应用程序,你需要去 JavaEE(企业版)。 无论如何,这就是他们每个人所做的:

    SE(标准版):它包含最基本的库,通常用于桌面应用程序,但它也是企业版的一部分。

    EE(企业版):用于企业应用程序(不仅仅是网络应用程序),这意味着分布式编程,从网络应用程序、桌面到网络服务......

    ME(微型版):适用于移动技术,不仅是手机,还包括自动售货机、智能电视、导弹制导……;)

    FX:是一个丰富的开发平台,可以轻松开发强大的客户端。

    关于你的问题,EE和SE之间的区别,我已经回答了,换句话说:

    EE 是 SE 的扩展,它包括 EE 并允许您对企业应用程序进行编程。 因此,如果您想在 EE 中编程,则需要安装 SE(只需将其视为系统要求)。

    我真的不明白你所说的商业是什么意思。我可以告诉你的是,企业版在其库中集成了一个用于开发业务组件的工具,称为 EJB(Enterprise Java Beans)。

    EE、SE 和 FX 之所以是分离产品,是因为需要分离关注点。

    示例:也许您创建了一个根本不需要通过互联网进行通信的桌面应用程序。为什么要在其中包含用于分布式编程的企业库?

    各方面,但最后一个问题有点没有意义。

    【讨论】:

    • @Nik Bougalis :) 我不确定,但那是 Visual Studio Express 吗?不知道,好用吗?我想当你选择一门编程语言时,你也想使用一个流行的、已经有很多人使用的 IDE,这样当你遇到困难时,你可以更容易地找到解决方案。我不熟悉那个 IDE,但即使我熟悉,我想我也不会推荐它。
    【解决方案4】:

    不同版本(SE、EE、ME 和 FX)都是位于 JVM 之上的不同 API(您可以在此处找到完整描述:Your First Cup)。它们不是不同的语言,因此没有新的语法来学习它们之间的切换,只是不同的 API 调用。

    我个人更喜欢 C# 来开发 Web 应用程序,因为它与 ASP.NET 和 MVC 框架集成。

    【讨论】:

      【解决方案5】:

      在这里查看描述Java perspective

      【讨论】:

        猜你喜欢
        • 2023-04-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多