我决定学习另一种语言,并处于挑选阶段。
目前正在研究Java和C#,但是因为它是跨平台的,所以倾向于Java。我将主要构建基于Web的应用程序,但各种Java版本让我感到害怕。 Java EE,SE,ME,FX,它们有什么区别?使用彼此有什么好处吗?
好的,FX用于台式机,ME用于移动设备,SE和EE是相同的,但一个用于“业务”,另一个用于“业务”。那么,如果我学习SE,那么切换到EE需要什么?还是外汇?我的问题是我无法理解为什么SE,EE和FX是独立的产品?它们都运行相同的JVM,并且都可以执行相同的结果应用程序。为什么他们分开呢?
答案 0 :(得分:16)
将它们想象成位:
这不是一个确切的比较,但它已经足够接近......
答案 1 :(得分:10)
这不是那么具有破坏性。
因此,Java SE构成了基础。 Java EE适用于Web应用程序。
将来java将获得一个模块化系统,区别仅在于库级别。
答案 2 :(得分:4)
当你说编辑时,我认为你的意思是IDE(集成开发环境)。 Java有这么多编辑器和C#的原因不是因为Java是开源,而C#不是。因此,你要在C#中找到的唯一真正好的IDE叫做“visual studio”(它不是免费的)
我强烈建议您使用java,因为几乎所有工具都可以免费使用,甚至是部署应用程序的应用程序服务器。
不要害怕java版本,如果你想构建网络应用程序,你需要去JavaEE(企业版)。 无论如何,这是他们每个人所做的事情:
SE(标准版):它包含最基本的库,通常用于桌面应用程序,但它也是企业版的一部分。
EE(企业版):用于企业应用程序(不仅仅是Web应用程序),这意味着分布式编程,从Web应用程序,桌面到Web服务......
ME(Micro Edition):适用于移动技术,不仅仅是手机,还有自动售货机,智能电视,导弹制导......;)
FX:是一个丰富的开发平台,可以轻松地开发强大的客户端。
关于你的问题,EE和SE之间的差异,我已经回答了,换句话说:
EE是SE的扩展,包括EE,允许您对企业应用程序进行编程。 因此,如果您想在EE中编程,则需要安装SE(只需将其视为系统要求)。
我真的不明白商业是什么意思。我可以告诉你的是,企业版在其库中集成了一个用于开发业务组件的工具,称为EJB(Enterprise Java Bean)。
EE,SE和FX之所以是separet产品,是因为需要分离关注点。
示例:也许您创建的桌面应用程序根本不需要通过互联网进行通信。为什么你会在其中使用分布式编程的企业库?
惠特所有方面,但最后一个问题有点无意义。
答案 3 :(得分:3)
不同版本(SE,EE,ME和FX)都是位于JVM之上的不同API(您可以在此处找到完整描述:Your First Cup)。它们不是不同的语言,因此没有新的语法来学习它们之间的切换,只是不同的API调用。
我个人更喜欢C#开发Web应用程序,因为它与ASP.NET和MVC框架集成。
答案 4 :(得分:1)
请参阅此处的说明Java perspective