IntelliJ IDEA 与 Eclipse:圣战!

已发表: 2019-06-10

Batman vs. Superman、Marvel vs. DC、Windows vs. Linux、Java vs. C#,是一些永恒战争的几个例子。 一场这样的战斗是 IntelliJ IDEA 与 Eclipse - 最佳集成开发环境的选择 - 被亲切地称为 IDE。 当今市场上有许多用于 Java 开发的 IDE——Netbeans、DrJava 之类的,当然还有 Eclipse 和 IntelliJ IDEA 等等。

这些 IDE 通过为开发人员提供完整的集成环境来简化他们的工作流程。 各种插件的支持加上无缝处理大型项目的能力使 IDE 成为任何开发人员工具包中不可替代的工具。

从世界顶级大学在线学习软件开发课程获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。

今天我们将深入研究两个这样的 IDE,并将它们正面交锋。 我们将看看 Eclipse 和 IntelliJ IDEA 如何在它们提供的特性方面相互竞争。

目录

Eclipse IDE

到目前为止,Eclipse 是新手和经验丰富的开发人员最常用的 IDE。 它得到了庞大的开发人员社区的支持,提供了让您启动和运行的优秀文档,以及最好的部分 -数以千计的插件的支持,让您的体验更加出色。

Eclipse 主要用于开发 Web、移动、桌面、企业或嵌入式系统应用程序。 它可以在 Eclipse 公共许可下开源使用。 Eclipse 主要是用 Java 编写的,可以在 Windows、Linux 和 Mac OS 三大操作系统上无缝运行。 尽管以 Java 编程而闻名,但它也支持各种其他语言,包括 Groovy、Scala 和 Python。

Eclipse 能够在同一个窗口中打开多个项目,从而使您能够控制依赖关系和关系。 然而,就用户体验和代码完成和检查的便利性而言,尽管 Eclipse 有很多插件,尤其是 checkstyle,但仍存在不足之处。

如果您是新手程序员,您会喜欢自动完成功能,该功能可以显示适用于您的上下文的最相关符号列表。 Eclipse 在这方面做得不够。 只是为了争论,我们可以利用这一点来支持 Eclipse,说它提供了更好的学习曲线,但归根结底,这实际上是关于让您的应用程序启动和运行的难易程度。

话虽如此,Eclipse 已经并将继续在全球范围内广泛使用。 让我们来看看它的一些功能,尽管有限制,但仍然可以继续使用。
Java MVC 架构初学者指南

Eclipse 的显着特点

  • 米林:

Mylyn 是用于任务管理的 eclipse 子系统。 Mylyn 的优点是众所周知的,但在您使用它并亲眼目睹之前,您不会欣赏它们。 Mylyn 帮助开发人员在任务列表视图中跟踪他们的任务,而无需打开浏览器。 Mylyn 提供了一种简单的方法来跟踪与您当前工作相关的所有文件。

  • 软件更新:

Eclipse 提供频繁和定期的软件更新。 无需担心依赖关系或解压缩压缩文件即可从控制台本身更新 IDE 的能力使开发人员的生活更轻松。 一切都通过这个简单的对话进行管理:

  • 企业 Java 工具:

Eclipse 为 JEE 项目提供了最好的工具。 它提供了大量的功能——从 Web 服务创建向导、XML 编辑到出色的 JSF 和 JPA 工具。 本质上,这是一个非常简单但非常有用的功能。 控制和部署您选择的服务器的能力是值得称道的。 此外,如果您的服务器不在列表中,您可能会找到一个插件来支持您的服务器。

  • 模型驱动开发:

Eclipse 建模项目为那些使用 EMF 或相关建模技术人提供了一组建模工具。 用于处理 EMF 模型的 Ecore 工具允许您使用标准树或通过可视化 Ecore 图编辑器(见下文)创建和修改您的 ecore。

15 个必须知道的 Spring MVC 面试问题

IntelliJ IDEA IDE

IntelliJ IDEA 是由 JetBrains 开发的功能齐全的 IDE。 JetBrains 是一家成熟的公司,以有利于 C# 开发的 Visual Studio 的 Resharper 插件而闻名。

IntelliJ IDEA 有两个版本——免费社区版和终极版。 IntelliJ IDEA的免费社区版提供了对开发 Android 和 Java 应用程序有用的基本功能。 Google 的官方 Android 开发平台——Android Studio,也是基于 IntelliJ IDEA 的免费社区版。 此 IDE 支持 Java、Kotlin、Scala、Android、Mercurial、Groovy、Gradle、Git、SVN、SBT 和 CVS 等多种语言,还提供基本(但必不可少)功能,如代码完成、深度静态分析、智能重构、调试器、测试运行器等。另一方面,终极版具有用于开发 Web 和桌面应用程序的最先进的一组功能。

终极版的一些附加功能

    • 支持Spring框架的集成。
    • 支持 Web 应用脚本语言,如 JavaScript、CoffeeScript、TypeScript 等。
    • 支持 Node.js、Angular 和 React 等 Web 开发框架
  • Java EE 支持,例如 JSF、JAX-RS、JPA、CDI 等

尽管支持许多插件,但 Eclipse 在为代码完成提供良好帮助方面仍存在不足。 IntelliJ 中的默认代码编译更快更好,特别是如果您是新手程序员 - IntelliJ 可以帮助您改进代码。

其中之一是智能补全,它为您提供适用于您当前上下文的最相关符号的列表。 这个以及其他补全会不断地从您的编码实践中学习,并将您最常用的包和类移到列表的顶部,以便您可以更快地选择正确的选项。 另一个这样的功能是链完成,它比智能完成更智能。 它通过使用 getter 或方法列出了所有适用的符号,这使得它更快。 还有许多其他开箱即用的功能也使 IntelliJ IDEA 成为真正的智能 IDE
什么是测试驱动开发:新手指南

使 IntelliJ IDEA 成为真正智能的功能

  • 版本控制:

IntelliJ IDEA 为开发人员提供了适用于大多数版本控制系统的统一接口。 Git、SVN、Mercurial、CVS 和 Perforce 仅举几例。 这个单一界面可让您浏览更改历史、管理分支和合并冲突。

  • 构建工具:

此 IDE 支持所有主要的构建工具,如 Gradle、Maven、Gant、SBT、NPM、Grunt、Gulp 等。 这些工具最终有助于自动化编译、打包、运行测试、部署和其他活动。

  • 应用服务器:

它支持主要的应用服务器,如 TomCat、JBoss、WebSphere、Glassfish 等等。 它允许您将代码部署到应用程序服务器上,并从 IDE 本身调试已部署的代码。

  • 索引:

首次启动时,IntelliJ 会索引整个项目。 这样,它就不需要在每次需要资源时都搜索文件(与 Eclipse 不同)。 这显着加快了搜索过程。

  • 多语言支持:

正如我们之前所说,IntelliJ IDEA 支持许多开箱即用的 JVM 和非 JVM 框架和语言。 AngularJS、React、JavaScript、TypeScript、Scala、SQL 等框架和语言只是 IntelliJ IDEA 支持的众多语言中的几个示例。
所有这些功能使 IntelliJ IDEA 在可用性和用户体验方面成为明显的赢家。 但是,它提供的插件数量不足。 与 Eclipse 提供的 1,276 个插件相比,IntelliJ 仅提供约 700 个插件。
但是,这不应该是一个交易破坏者,因为 IntelliJ 提供了许多开箱即用的新功能和改进功能,而不需要任何插件——这与 Eclipse 不同。
如何成为全栈开发人员

综上所述…
如果您是 Java 开发领域的初学者,那么您应该选择 IntelliJ IDEA——这要归功于它提供的各种适合初学者的功能。 但是,如果您希望从事大型和复杂的项目,并且在 Java 编程方面拥有相当多的专业知识,那么您可以选择 Eclipse。 与其他所有辩论一样,归根结底,这完全取决于偏好,但您无法忽视 IntelliJ IDEA。

如果您有兴趣了解有关全栈软件开发的更多信息,请查看 upGrad 和 IIIT-B 的软件开发执行 PG 计划 - 全栈开发专业化,专为工作专业人士设计,提供 500 多个小时的严格培训,9+项目和任务、IIIT-B 校友身份、实用的实践顶点项目和顶级公司的工作协助。

成为全栈开发人员

申请计算机科学理学硕士