其他分享
首页 > 其他分享> > 用了 Intellij idea 这些插件和高效配置后,写代码快得飞起来,再也不用 996 加班了

用了 Intellij idea 这些插件和高效配置后,写代码快得飞起来,再也不用 996 加班了

作者:互联网

0. 背景

作为一个 Java 程序员,我相信,绝大多数同学日常都是用 idea 来写代码。

Idea 作为宇宙第一 Java IDE,提供了丰富、强大的功能,可以让你写 Java 代码快得飞起来。

遗憾的是,很多人都不知道怎么开启 idea 隐藏的强大功能。下面博主将带你一起,探究 idea 背后那些强大到逆天的功能。

特别说明:

本文所有实操基于 Mac OSX 系统,其他操作系统(如 Windows,Linux 等)没有实践过,不做讲解。

非特别说明:

虽然文章标题有点『标题党』的嫌疑,但是内容绝对不是标题党文章,干货满满,请耐心往下看,看完没收获直接来北京打我!

1. ToC(目录)

本文将从以下几个方面,展开讲解:

2. keymap

keymap,就是 idea 的快捷键配置方案,本身没有太多的内容,之所以放到最前面,是因为后续的讲解,很大程度上都依赖于 keymap。

建议将 keymap 设置为默认的,比如 Mac 下默认的 keymap 就是 Mac OS X 10.5 +。

这样当你想使用某个快捷键而 Google 时,多数时候,找到的答案都使用的是默认的快捷键方案,不然的话,别人的快捷键你不一定适用。

3. 常用插件

接下来为大家推荐一些常用的插件,有了这些插件的加持,会让你的工作事半功倍。

为了方便大家索引,先把推荐的插件列到下面:

下面将逐一介绍这些常用的插件。

3.1 Lombok

插件官网:https://plugins.jetbrains.com/plugin/6317-lombok

这个插件,相信不用多做解释,写过 Java 的同学都知道,JavaBean 代码里有一堆的 set/get,tostring 等方法,非常臃肿。有了 Lombok 之后,再也不用写这些臃肿的代码了。

3.2 Key Promoter X

插件官网:https://plugins.jetbrains.com/plugin/9792-key-promoter-x

这个插件的作用是告诉你,你做的某个操作,有哪些快捷键可以代替。

有些时候,我们想要做某件事情,比如我想打开 idea 自带的 terminal,但是我并不知道有快捷键可以用,于是我只能傻乎乎的用鼠标去点开 terminal。

有了这个插件后,当你用鼠标去点 terminal 时,右下角会有个弹窗提示,告诉你,其实你没必要用鼠标去点,直接使用快捷键 Alt + F12 就可以了,如下图:

file

怎么样,是不是很贴心!

3.3 Alibaba Java Coding Guide

插件官网:https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines

这个插件,也不做过多解释。阿里巴巴官方推出了 Java 开发手册,这个插件就是检查你的代码是否符合手册规范的,直接安装吧,相信阿里巴巴!

举个简单的例子,当我要获取当前时间戳的时候,我这么写:long time1 = new Date().getTime(),这个时候,它就会有报错提示,告诉你直接使用 long time2 = System.currentTimeMillis()
file

怎么样,是不是很智能,又学到了一招吧!

3.4 CamelCase

插件官网:https://plugins.jetbrains.com/plugin/7160-camelcase

这个插件的作用是对字符串做格式上的转化: kebab-case, SNAKE_CASE, PascalCase, camelCase, snake_case or space case 等。

典型的应用场景是,比如我们数据库里面的字段,用的是下划线的格式,但是 Java 里面的字段,用的是驼峰的格式。

我们怎么保证不会因为手残导致数据库字段和 Java 字段对不上呢?比如数据库字段是 your_name,一不小心 Java 里写成了 youName。

当你遇到问题的时候,估计查到哭都查不出来,Java 里面的字段少了个 'r'。

这种情况下,CamelCase 插件就派上用场了。使用快捷键 Alt + Shift + u,就可以在各种格式之间切换了,很容易就可以把 your_name 变成 yourName。

如下所示:
file

当然,鉴于多数情况下,Java 不存在 kebab-case/space case 即 中划线/空格 连接方式,你还可以在配置中设置,格式切换时去掉他们,这样切换时,按 Alt + Shift + u 的次数就可以少些,配置方法如下:
file

3.5 GenerateAllSetter

插件官网:https://plugins.jetbrains.com/plugin/9360-generateallsetter

这绝对是一个特别值得推荐的插件,能够 save your life !

在我们写代码的时候,经常会有各种 dto 之间的转化,比如从数据库的 User 转化为前端的 UserVO。

如果是你自己写,先不说写一堆 get/set 累不累,最关键的是,我怕写漏了某个字段!比如 User 有 10 个字段,最后到 UserVO 只有 9 个了,哭都没地方哭!

总不能一个个数吧?这时候 GenerateAllSetter 就出来拯救你了!他可以自动的帮你生成 UserVO 所有的 set 方法,更智能的是,如果 UserVO 和 User 字段名一样,它还会自动帮你生成 get!如下图所示:
file

当我需要将 User 转化为 UserVO 时,在我写好方法声明后,按下 Alt + Enter,选中 Generate setter getter converter,他就自动帮我写好转化的代码了!

怎么样,是不是 6 得飞起,妈妈再也不用担心我写漏字段了!

题外话:

可能有些人会有疑问,不就是个 DTO 转化吗?我用 BeanUtils 等工具不香吗?还真是不香,这玩意有很多坑,性能是一方面,关键是当字段名不一样时,很难察觉到

3.6 Codota AI Autocomplete

插件官网:https://plugins.jetbrains.com/plugin/7638-codota-ai-autocomplete-for-java-and-javascript

关于 AI 插件,目前我就推荐这一个,确实比较强大(好多 AI 插件,名曰人工智能,其实人工智障,还卡得要死)。贴一个 gif 大家感受下:
file

当你想初始化一个 List 的时候,再你敲完 List 后,你就可以发现,后面的 users = new ArrayList<>(); 就有智能提示了,都不用敲了。

当然上面举的例子只是 Codota 很小的一个智能提示,其他更多留给大家探索。

总之,很多时候,它的智能提示很强大,能省去你不少时间,省得你一个个敲代码了!

3.7 GsonFormat

插件官网:https://plugins.jetbrains.com/plugin/7654-gsonformat

这个插件的作用,就是根据 json 字符串,自动生成 Java bean。先放个官网的 gif 吧:
file

这里使用的快捷键是:Alt + s。

这里需要注意的一点是,gsonformat 插件支持自定义 json 反序列化库,比如 jackson,gson 等,可以在 setting 里面设置,如下图:
file

3.8 Grep Console

插件官网:https://plugins.jetbrains.com/plugin/7125-grep-console

这个插件的作用是对 idea 默认的 Console(控制台)做增强,比如默认的控制台输出的日志,不管日志级别是什么,都是没有颜色区分的。
有了这个插件后,ERROR、WARN 等不同级别的日志,会展示成不同的颜色,方便我们一眼就看出来有没有错误日志等。

默认的配色方案如下:
file

具体的颜色配置以及更多的功能,可以参考插件官网。

3.9 Maven Helper

插件官网:https://plugins.jetbrains.com/plugin/7179-maven-helper

平时我们的 maven 项目,会遇到一些依赖冲突的问题,比较难以排查和定位。有了这个插件后,能够方便的显示出来有哪些依赖冲突,而且还可以自动加上 exclude,操作界面如下图:
file

3.10 RestfulToolKit

插件官网:https://plugins.jetbrains.com/plugin/10292-restfultoolkit

这个插件的作用是,帮助我们快速导航到指定 url 请求路径的 controller 方法。平时我们的项目会写大量的 controller 以及方法,来处理不同的 url 请求。
但是当代码多了以后,很难找到某个 url 是哪个方法处理的,有了这个插件,就可以快速根据 url 导航到具体的方法。

file

快捷键是 cmd + \。

3.11 Rainbow Brackets

插件官网:https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

这是一款提升 idea 颜值的插件。我们写的代码,经常会有很多嵌套的括号,比如 get1(get2(get3())),这么多的括号嵌套,而且颜色都还一样,会看得人眼花缭乱。有了这个插件,会给每一对括号都显示上不同的颜色,增加颜值的同时,也较方便的看出哪些括号是一对:
file

好了,到这里,推荐的常用插件就介绍完了。大家可以根据需要,自由安装哪些插件。记住:插件虽好,可不要贪杯哦!

如果你也有好用的插件推荐,欢迎联系我,一起探讨学习!

4. 高效配置

Idea 确实是一款非常非常优秀的 Java IDE。所谓好马还得好鞍配,下面介绍的一些高校配置,可以让你使用 idea 的时候,更舒适、更高效!

4.1 import 自动导入包和删除无用的 import

设置路径:Editor -> General -> Auto Import。
勾选其中的 add on the fly 和 optimize on the fly,如下图:
file

4.2 避免 import *

默认情况下,当 import 同一个包的 class 超过 5 个后,idea 会替换成 import *。但是通常我们不建议这样写,遵循的原则就是使用哪些就明确写引用哪些!

设置路径:Editor -> Code Style -> Java -> Imports。
将 Class count to use import with 、Names count to use static import with * 都设置为 999(默认都是 5),如下图:
file

4.3 保存文件时自动去掉末尾空格

设置路径:Editor -> General -> Other。
Strip trailing space on Save 选 All,如下图:
file

4.4 智能提示不区分大小写

设置路径:Editor -> General -> code completion。
取消勾选 match case,如下图:
file

5. 超好用的快捷键

这一章节,将推荐一些超好用的快捷键。有了这些快捷键的加持,不仅能够节省你大量的时间,还能让你写出更优秀的代码!

5.1 万能提示神器:Alt + Enter

如果你只想记住一个快捷键的话,我推荐这个!Alt + Enter 是一个万能提示器,可以用说是好用到爆炸

标签:插件,996,Java,Intellij,代码,idea,Live,Template
来源: https://www.cnblogs.com/wxweven/p/16316008.html