宇宙最强集成开发环境——IDEA

认识 IntelliJ IDEA

JetBrains 公司介绍

IntelliJ IDEA,是 JetBrains 公司的产品,该公司成立于 2000 年,总部位于捷克的布拉格,致力于为开发者打造最高效智能的开发工具。

公司旗下还有其它产品,比如:

  • WebStorm:用于开发 JavaScript、HTML 5、CSS 3 等前端技术。
  • PyCharm:用于开发 python。
  • PhpStorm:用于开发 PHP。
  • RubyMine:用于开发 Ruby/Rails。
  • AppCode:用于开发 Objective-C/Swift。
  • CLion:用于开发 C/C++。
  • DataGrip:用于开发数据库和 SQL。
  • Rider:用于开发 .NET。
  • GoLand:用于开发 Go。

用于开发 Android 的 Android Studio,也是 Google 基于 IDEA 社区版进行迭代的。

IntelliJ IDEA 介绍

IDEA,全称 IntelliJ IDEA,是 Java 语言的集成开发环境,目前已经基本代替了 Eclipse 的使用。

IDEA 在业界被公认为是最好的 Java 开发工具(之一),因其功能强悍设置人性化,而深受 Java、大数据、移动端程序员的喜爱。

IDEA 的主要优势:(vs Eclipse)

功能强大

  • 强大的整合能力。比如:Git、Maven、Spring 等。
  • 开箱即用的体验(集成版本控制系统、多语言支持的框架随时可用,无需额外安装插件)。

符合人体工程学

  • 高度智能(快速的智能代码补全、实时代码分析、可靠的重构工具)。
  • 提示功能的快速、便捷、范围广。
  • 好用的快捷键和代码模板。
  • 精准搜索。

IDEA 的下载

官方网站: https://www.jetbrains.com/idea/download/#section=windows

IDEA 分为两个版本: 旗舰版(Ultimate)和社区版(Community)

IDEA 的大版本每年迭代一次,大版本下的小版本(如:2022.x)迭代时间不固定,一般每年 3 个小版本。

工程与模块管理

IDEA 项目结构

层级关系

project(工程)- module(模块)- package(包)- class(类)

具体的

一个 project 中可以创建多个 module

一个 module 中可以创建多个 package

一个 package 中可以创建多个 class

这些结构的划分,是为了方便管理功能代码。

Project 和 Module 的概念

在 IntelliJ IDEA 中,提出了 Project 和 Module 这两个概念。

在 IntelliJ IDEA 中 Project 是最顶级的结构单元,然后就是 Module。

目前,主流的大型项目结构基本都是多 Module 的结构,这类项目一般是按功能划分的,比如:user-core-module、user-facade-module 和 user-hessian-module 等等,模块之间彼此可以相互依赖,有着不可分割的业务关系。

因此,对于一个 Project 来说:

  • 当为单 Module 项目的时候,这个单独的 Module 实际上就是一个 Project。
  • 当为多 Module 项目的时候,多个模块处于同一个 Project 之中,此时彼此之间具有互相依赖的关联关系。
  • 当然多个模块没有建立依赖关系的话,也可以作为单独一个小项目运行。

创建 Module

建议创建Empty 空工程,然后创建多模块,每一个模块可以独立运行,相当于一个小项目。

IDEA 断点调试(Debug)

为什么需要 Debug

编好的程序在执行过程中如果出现错误,该如何查找或定位错误呢?简单的代码直接就可以看出来,但如果代码比较复杂,就需要借助程序调试工具(Debug)来查找错误了。

运行编写好的程序时,可能出现的几种情况:

  • 情况 1:没有任何 bug,程序执行正确!
  • 情况 2:运行以后,出现了错误或异常信息。但是通过日志文件或控制台,显示了异常信息的位置。
  • 情况 3:运行以后,得到了结果,但是结果不是我们想要的。
  • 情况 4:运行以后,得到了结果,结果大概率是我们想要的。但是多次运行的话,可能会出现不是我们想要的情况。

比如:多线程情况下,处理线程安全问题。

Debug 的步骤

Debug(调试)程序步骤如下:

  1. 添加断点。
  2. 启动调试。
  3. 单步执行。
  4. 观察变量和执行流程,找到并解决问题。

IDEA 常用插件

插件 1:Alibaba Java Coding Guidelines

阿里巴巴 Java 编码规范检查插件,检测代码是否存在问题,以及是否符合规范。

使用:在类中,右键,选择编码规约扫描,在下方显示扫描规约和提示。根据提示规范代码,提高代码质量。

插件 2:jclasslib bytecode viewer

可视化的字节码查看器。

使用:

  1. 在 IDEA 打开想研究的类。
  2. 编译该类或者直接编译整个项目(如果想研究的类在 jar 包中,此步可略过)。
  3. 打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项。
  4. 选择上述菜单项后 IDEA 中会弹出 jclasslib 工具窗口。

插件 3:GenerateAllSetter

实际开发中还有一个非常常见的场景: 我们创建一个对象后,想依次调用 Setter 函数对属性赋值,如果属性较多很容易遗漏或者重复。

可以使用这 GenerateAllSetter 提供的功能,快速生成对象的所有 Setter 函数(可填充默认值),然后自己再跟进实际需求设置属性值。

插件 4:Rainbow Brackets

给括号添加彩虹色,使开发者通过颜色区分括号嵌套层级,便于阅读。

插件 5:CodeGlance Pro

在编辑器右侧生成代码小地图,可以拖拽小地图光标快速定位代码,阅读行数很多的代码文件时非常实用。

插件 6:Statistic

代码统计工具。

插件 7:Presentation Assistant

显示快捷键操作的按键。

插件 8:Key Promoter X

快捷键提示插件。当你执行鼠标操作时,如果该操作可被快捷键代替,会给出提示,帮助你自然形成使用快捷键的习惯,告别死记硬背。