IntelliJ IDEA - 简介



IntelliJ 是 Java 最强大和流行的集成开发环境 (IDE) 之一。它由JetBrains开发和维护,并提供社区版和旗舰版。这款功能丰富的 IDE 支持快速开发,并有助于提高代码质量。

什么是 IDE 及其优势?

IDE 代表集成开发环境。它结合了多种工具,使软件开发过程更加轻松、健壮且不易出错。与纯文本编辑器相比,它具有以下优势:

  • 与编译器、调试器、版本控制系统、构建工具、各种框架、应用程序分析器等有用工具集成。

  • 支持代码导航、代码补全、代码重构和代码生成功能,从而加速开发过程。

  • 通过插件支持单元测试、集成测试和代码覆盖率。

  • 提供丰富的插件集,进一步增强IDE的功能。

IntelliJ 的特性

IntelliJ IDEA 拥有许多顶级的 Java 代码补全功能。其预测算法可以准确地推断编码人员试图输入的内容,并为他完成输入,即使他不知道特定类、成员或任何其他资源的确切名称。

深度洞察

IntelliJ IDEA 真正理解并具有对您代码以及编码人员上下文的深度洞察,这使得它在其他 Java IDE 中独树一帜。

  • 智能代码补全 - 它支持基于上下文的代码补全。它提供当前上下文中适用的最相关符号列表。

  • 链式代码补全 - 这是一项高级代码补全功能,它列出当前上下文中可通过方法或 getter 访问的适用符号。

  • 静态成员补全 - 它允许您使用静态方法或常量,并自动添加所需的导入语句以避免编译错误。

  • 检测重复代码 - 它可以动态查找重复的代码片段,并向用户提供相关通知/建议。

  • 检查和快速修复 - 每当 IntelliJ 检测到您即将犯错时,同一行上就会弹出一个小的灯泡通知。单击它会显示建议列表。

开发者人体工程学

IntelliJ IDEA 是围绕编码原则设计的,即应允许开发人员尽可能少地分心即可编写代码。因此,在这种情况下,编辑器是屏幕上唯一可见的内容,所有其他与编码无关的功能都具有专用的快捷键。

  • 以编辑器为中心的开发环境 - 快速弹出窗口有助于检查其他信息,而无需离开当前上下文。

  • 所有操作都支持快捷键 - IntelliJ IDEA 几乎为所有操作都提供了键盘快捷键,包括快速选择和在工具窗口之间切换等等。

  • 内联调试器 - 内联调试器允许您在 IDE 本身中调试应用程序。它使开发和调试过程变得无缝。

内置开发者工具

为了帮助开发人员组织工作流程,IntelliJ IDEA 为他们提供了令人惊叹的工具集,其中包括反编译器、Docker 支持、字节码查看器、FTP 和许多其他工具:

  • 版本控制 - IntelliJ 支持大多数流行的版本控制系统,如 Git、Subversion、Mercurial、CVS、Perforce 和 TFS。

  • 构建工具 - IntelliJ 支持 Java 和其他构建工具,如 Maven、Gradle、Ant、Gant、SBT、NPM、Webpack、Grunt 和 Gulp。

  • 测试运行器和代码覆盖率 - IntelliJ IDEA 允许您轻松地执行单元测试。IDE 包含主要测试框架的测试运行器和覆盖率工具,包括 JUnit、TestNG、Spock、Cucumber、ScalaTest、spec2 和 Karma。

  • 反编译器 - IntelliJ 带有一个用于 Java 类的内置反编译器。当您想查看没有源代码的库内部时,您可以这样做,而无需使用任何第三方插件。

  • 终端 - IntelliJ 提供了内置终端。根据您的平台,您可以使用命令行提示符,如 PowerShell 或 Bash。

  • 数据库工具 - IntelliJ 提供数据库工具,允许您连接到实时数据库;运行查询;浏览和更新数据;甚至在 IDE 本身中通过可视化界面管理您的模式。

  • 应用服务器 - IntelliJ 支持主要的应用服务器:Tomcat、JBoss、WebSphere、WebLogic、Glassfish 和许多其他服务器。您可以将工件部署到应用服务器,并在 IDE 本身中调试已部署的应用程序。

  • Docker 支持 - 通过单独的插件,IntelliJ 提供了一个专用的工具窗口,允许您连接到本地运行的 Docker 机器。

旗舰版和社区版的比较

旗舰版旨在协助 Web 和企业开发,而社区版则专为 JVM 和 Android 开发而设计。让我们考虑一些有助于我们理解这两个版本之间比较的重要要点:

特性 旗舰版 社区版
许可证 商业版 开源,Apache 2.0,适用于商业开发。
Java、Kotlin、Groovy、Scala 支持 支持
Android 开发 支持 支持
Maven、Gradle、SBT 支持 支持
Git、SVN、Mercurial、CVS 支持 支持
检测重复代码 支持 不支持
Perforce、TFS 支持 不支持
JavaScript、TypeScript 支持 不支持
Java EE、Spring、GWT、Vaadin、Play、Grails、其他框架 支持 不支持
数据库工具、SQL 支持 不支持
广告

© . All rights reserved.