为什么选择Java编程语言而不是其他语言?

为什么选择Java编程语言而不是其他语言?,java,Java,为什么你会选择java而不是其他?为什么选择java来编写应用程序 请包括您使用java的目的(桌面应用程序/web应用程序/移动)。java提供了一个非常丰富的API,可以直接生成最可移植的应用程序,因为几乎每个平台都有java VM 顺便说一句:自从我在微软的一家商店工作后,我从大学毕业就没有使用过Java,但我想不出有一件事我能用C语言做,而Java语言做不到,无论是企业应用程序、web应用程序还是桌面应用程序。 优秀的工具:IDE、CI等 大量的第三方库 大量可用的文档 大量可用的开发人

为什么你会选择java而不是其他?为什么选择java来编写应用程序


请包括您使用java的目的(桌面应用程序/web应用程序/移动)。

java提供了一个非常丰富的API,可以直接生成最可移植的应用程序,因为几乎每个平台都有java VM

顺便说一句:自从我在微软的一家商店工作后,我从大学毕业就没有使用过Java,但我想不出有一件事我能用C语言做,而Java语言做不到,无论是企业应用程序、web应用程序还是桌面应用程序。

  • 优秀的工具:IDE、CI等
  • 大量的第三方库
  • 大量可用的文档
  • 大量可用的开发人员
  • 平台无处不在
  • 出色的表现
  • 优良的规格
  • 坚固的垃圾收集系统
  • 托管内存
  • 本机线程
  • 选择-由多个供应商实施

我使用Java构建了各种中间件产品:库存管理;CMS;化学品注册;等等。

将其用于桌面应用程序


优秀的IDE可用,出色的API,“C风格”语法使其易于学习。JVM启动后,性能非常好。

还有一些事情没有提到:

  • 跨平台桌面应用程序,即使使用复杂的GUI
  • 一堆工具
  • 静态键入(请参阅)
  • 编译时的错误消息
  • 非常清楚的错误消息

我在BPM平台上使用Java,过去在企业web应用中使用Java

这取决于你想做什么。考虑到语言特性、可用库和IDE经验,我个人会选择C而不是Java。C#3.0有许多Java所缺乏的有用特性,如LINQ、Lambda表达式等。有些人更喜欢Java提供的大量库选择,但我认为有太多的方法。像Eclipse和NetBeans这样的JavaIDE正在变得更好,但我认为VisualStudio仍然更容易使用


当然,如果您不使用Windows,那么除了选择Java之外,您别无选择。Ruby和Python是实用程序应用程序和GUI(包括Web应用程序)的良好选择,但对于不使用Windows的企业应用程序,Java几乎是唯一的选择。

可移植性是Java的关键。我知道我正在编写的程序将在任何系统上运行,没有必要为不同的操作系统创建不同的版本。 Java还提供内置的安全性,使安全程序的编码更容易。
java是快速的,java是在C++的相同范围内的标杆。
C#是最常被比作java的语言。C#不像java那样可移植,而且几乎没有java所没有的特性。这使得Java更具吸引力,除非程序只在单个OS上运行,在这种情况下,我可以用C++来编码。

< P> java java的一个优点是大家都知道。当然,既然我已经说过了,我会从那些声称从未学过英语的人那里得到80条评论。尽管如此

不管你喜欢与否,Java是当今业界最接近的通用语言(成语的意思是“通用语言”)。几乎每个人都曾在某个时候使用过Java,或者(更常见的是)现在正在积极地使用它。这种无处不在的现象对一些公司非常有吸引力,尤其是那些依赖顾问的公司。如果您使用Java启动一个项目,您几乎可以保证能够找到人才在未来几年内维护代码库

另一方面,Java是开发跨平台桌面应用程序的优秀语言……只是没有人知道它。Java在服务器端的主导地位,加上J2ME人群的一点喜爱。但是,如果你客观地考虑java 6un中的Swing,很难找到更好的工具来完成这个任务。别误会我的意思,我看到它有它的缺陷,但其中许多已经在最近的版本中修复。现在的大部分问题都是思想共享:每个人都知道Java速度慢而且丑陋(这两个都不再是严格意义上的事实)。另一个问题是Swing在很大程度上是一个跨平台的UI工具包。这意味着,与Cocoa甚至WinForms相比,在Swing中创建专业UI本质上要困难得多


最后,选择Java(与.NET或Objective-C相反)的一个非常好的理由是生态系统。其他答案提到了图书馆,它们确实值得人们关注;但我特别想到的是日益增长的语言多样性。如果您现在用Java编写应用程序,您可以随时无缝地过渡到Scala。您还可以选择使用Groovy或JRuby编写脚本,更不用说利用Clojure中强大的并发抽象了。由于JVM的可移植性和高级特性,它越来越成为语言编译器和解释器的首选目标(甚至超过CLR)。java实际上是这个关系的中心,并不是真正受益于它周围的大量语言,而是从所有的互操作性、现在和未来中得到价值。

< P>我从C++的几年转换到java,因为我在处理更高级的东西,需要内存管理的好处,反射和沙盒执行,这是我用Java得到的

我在90年代末尝试过COM,但无法触摸它


NET看起来很有前途,而且在许多方面都比Java好得多。不幸的是,以窗口为中心对我来说是一个彻底的破坏者。

另一个好处是可用的很棒的静态分析工具,例如。除了编译器执行的检查之外,它们还对代码执行大量检查,并且可以帮助识别代码