- Published on
IDEA高效开发实战:核心快捷键与必备插件全解析
- Authors
- Name
- Liant
IDEA从入门到略懂
前言
这篇文章是基于小组分享会的前提下进行创作的,本意是为了让大家更加有效率的写代码,所以大部分的知识以实际应用为准,所以相对于 jetbrain 官方的手册会简陋许多,正如标题所写,从入门到略懂,如果有遗漏的知识,还请大家补充。
基本操作篇
基本操作篇的主要内容是快捷键操作。在开始列举各种花里胡哨的快捷键之前,请各位养成一个习惯,即关掉IDEA默认开启的 project 侧边栏,project 文件目录会占用一部分屏幕面积影响代码的阅读效率且没有什么卵用(除了偶尔打开下文件 基本不会动他),且 project 的大多数操作需要鼠标点选文件夹和文件,相对于纯键盘操作而言效率非常低下(为什么今天还有这么多人用vim的一个原因就是vim的操作基于键盘,熟练之后的输入效率比大多数图形化的编辑器效率高的多),而且一个好的工程师应该对自己的项目文件名了如指掌,所以,第一个得记住的快捷键是 alt+1
关闭 project 侧边栏。
doubule shift
: 第二个要讲的快捷键是双击 shift 双击 shift 会出现一个类似于 mac 下聚焦搜索的功能,这也是为什么最开始说要关闭 project 的原因,使用双击shift的操作可以通过搜索你需要打开文件的名称快速打开你需要的文件,省去了在 project 侧边栏点选的时间,而且双击 shift 还可以搜索很多配置项,比鼠标操作要高效的多。ctrl+alt+l
格式化你的代码,很多时候写代码会有各种毛病:比如空行问题 比如花括号换行问题 再比如像 = != 这种操作符的空格问题,以及各种小毛病,使用格式化代码可以避免大多数代码风格上的问题,如果统一配置了风格也可以快速保证团队的代码风格统一。ctrl+b && ctrl+q
这两个快捷键一起讲,ctrl+b 跳转变量(方法定义) ctrl+q 以小窗的形式显示文档,很多时候很多基础的bug都是在于开发者没有看过源码或者没有看过其他人的方法的实现,随便就调用导致的,同时,很多时候开发一些功能的时候有的人还会去看框架或者语言手册,其实大可不必,直接ctrl+b看源码就可以看到具体实现,节省你打开浏览器和搜索引擎的时间。alt+insert
insert键在方向键上方,alt+insert可以根据代码模板生成代码,比如单元测试 getter setter方法 注释 作者签名等,具体能生成效果可以自行查看ctrl+alt+u && ctrl+alt+shift+u
不加shift是小窗形式查看 UML 类图 加 shift 是打开一个分页查看类图,UML 类图具体怎么看就不具体阐述了,网上的资料很多,讲的也比我清楚的多,在新入手一个框架或者新入门一门技术的时候 UML 可以帮你弄清楚不少依赖关系,方便你很快上手入门。alt+7
和查看 UML 类似 alt+7 查看当前文件结构,可以查看当前类的各种方法和属性,并且根据图表不同显示了静态方法等不同类型,同时还可以选择是否继承了某个方法,在结构侧边栏还可以通过ctrl+f搜索方法名达到跳转的目的,专治各种几十个方法的奇葩类。ctrl+k && ctrl+shift+k
写git commit 和 push 代码,看到这里可能部分人会疑惑了,为什么要用IDE的提交代码功能,终端下git add * git commit -m git push 的效率不比IDE效率高多了吗?原因很简单,当你使用IDE的commit 功能的时候 IDE会扫描你提交的代码如果有缺陷会提前发现并提示你是否坚持提交,根据IDE提示的内容可以很快跳转到缺陷代码部分并进行修改。如果装了sonar(之后会讲sonar) sonar再检测一遍也会提醒你哪个部分的代码有问题。alt+enter
当你在写代码的时候会遇到各种波浪线和红线 黄线 绿线,请不要装作没有看见,使用 IDE 自带的alt+enter 可以快速矫正错误,可以自己尝试一下。ctrl+F11
书签功能 当你需要跳转的时候可以使用,配合ctrl+数字键
可以快速跳转到你指定书签的位置database
database侧边栏不是按键,可以展开看一下,database可以支持大部分的数据源,如 MYSQL ORACLE PGSQL等,最新版本支持 mongoDB ,redis拓展需要收费且不建议用(请用redis desktop),自带的database某些方面可能不如navicat好用,但是自带的 database 功能可以在不切换窗口的情况下进行查询并且可以选择查询特定的语句,个人感觉比单独收费的 navicat 要香多了。http
http 也不是一个快捷键,你可以通过创建.http的形式来生成一个http文件,支持所有的http请求,并且可以自定义参数和method 支持通过curl生成请求文本,并且有请求快照且可以预览。个人感觉使用起来比postman要好一些。
插件篇
sonar lint
gitlab (码云)常配置的缺陷检查插件sonar qube
的客户端版本,可以检测在你写代码的时候检测出可以优化的部分,配合快捷键alt+enter
可以快速纠正。code glance
如果非要让我选一个用sublime
的理由 大概是sublime
带代码地图功能,问题是如果装了code glance
这个插件之后,就没必要用sublime
了rainbow brackets
彩虹括号,对应的括号的颜色相同,保护你的眼睛免受各种括号骚扰,特别是不会用promise
async await
的前端写出来的代码。material theme
这个是一个主题插件,可以切换各种符合谷歌material theme
主题的主题。同时配合同一个开发团队的atom
图表 美化你的IDEkey promoter
以上所有快捷键记不住怎么办? 装一个key promoter
记录所有你平时鼠标点击的可以使用快捷键的操作,有空打开看一下,可以记住很多自己记不住的快捷键translation
翻译插件,ctrl+shift+o 快速翻译,免去单独开个网页的麻烦git toolbox
git背锅插件,可以根据当前代码提示究竟是谁写的代码