01、Intellij Idea 介绍
IntelliJ 是最强大和流行的 Java 集成开发环境 (IDE) 之一。它由JetBrains开发和维护,可作为社区版和终极版使用。这个功能丰富的 IDE 支持快速开发并有助于提高代码质量。
Intellij Idea 的优点
IDE代表集成开发环境。它是多种工具的组合,使软件开发过程更简单、稳健且不易出错。与纯文本编辑器相比,它具有以下优点 :
- 与有用的工具集成,如编译器、调试器、版本控制系统、构建工具、各种框架、应用程序分析器等。
- 支持代码导航、代码完成、代码重构和代码生成功能,可促进开发过程。
- 通过插件支持单元测试、集成测试和代码覆盖。
- 提供丰富的插件集以进一步增强IDE功能。
Intellij Idea 的特点
IntelliJ IDEA 具有一些最高效的 Java 代码完成功能。它的预测算法可以准确地假设程序员正在尝试输入什么,并为他完成它,即使他不知道特定类、成员或任何其他资源的确切名称。
IntelliJ IDEA 真正理解并深入了解您的代码以及编码器的上下文,这使其在其他 Java IDE 中如此独特。
- 智能代码完成: 它支持基于上下文的代码完成。它给出了适用于当前上下文的最相关符号的列表。
- 链代码完成: 它是一种高级代码完成功能,它列出了可通过当前上下文中的方法或 getter 访问的适用符号。
- 静态成员的完成:它允许您使用静态方法或常量并自动添加所需的导入语句以避免编译错误。
- 检测重复: 它即时找到重复的代码片段并向用户提供有关它的通知/建议。
- 检查和快速修复: 每当 IntelliJ 检测到您将要犯错误时,就会在同一行上弹出一个小灯泡通知。单击它会显示建议列表。
Intellij Idea 的人性化设计
IntelliJ IDEA 是围绕编码原则设计的,即应该允许开发人员在编写代码时尽可能减少分心。这就是为什么在这种情况下,编辑器是屏幕上唯一可见的东西,具有用于所有其他与编码无关的功能的专用快捷方式。
- 以编辑器为中心的环境: 快速弹出窗口有助于在不离开当前上下文的情况下检查附加信息。
- 一切的快捷方式: IntelliJ IDEA 拥有几乎所有东西的键盘快捷键,包括工具窗口之间的快速选择和切换等等。
- 内联调试器: 内联调试器允许您在 IDE 本身中调试应用程序。它使开发和调试过程无缝。
Intellij Idea 开发者工具
为了帮助开发人员组织他们的工作流程,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 机器。
Intellij Idea社区版与商业版的区别
特征 | 社区版 | 商业版 |
---|---|---|
开源协议 | 开源和免费 | 商业付费 |
语言支持 | Java、Kotlin、Groovy、Scala、Perl、Python、XML、Go | HTML、XHTML、CSS、Java、php、Python、Kotlin、Perl、Scala、Go、SQL、Ruby、JavaScript、Groovy 等。 |
技术和框架支持 | Android、Ant、JavaFX、Junit、TestingNG、Gradle | Android、Ant、JavaFX、Junit、TestingNG、Gradle、Node.js、Spring、Struts、EjB、Django、OSGi 等。 |
检测重复 | 支持的 | 不支持 |
软件版本控制和修订控制 | CVS、Git、GitHub | ClearCase、Perforce、CVS、Git、GitHub |
部署 | Docker,Docker Compose(通过插件) | Docker、Docker Compose(通过插件)、Tomcat、Glassfish、Jboss、WebLogic、Jetty、Virgo 等。 |