IDEA高效实践(上)

简介: IDEA(IntelliJ IDEA)是业界公认的最好开发工具之一,当然好不好也因人而异,也不要刻意去争谁强谁弱,高手往往不在乎手中的兵器是什么的。个人而言,更高效的工具适合每个开发人员,在编写代码的时候花的时间少,就有更多的时间去设计代码,当然,使用一个陌生的IDE,效率肯定是比不上自己熟练的IDE的,所以为了节省诸君的学习成本,也为了更快地去接纳和熟练IDEA,所以周末之余,故作此文。---- 一品江南


一、概述



IDEA(IntelliJ IDEA)是业界公认的最好开发工具之一,当然好不好也因人而异,也不要刻意去争谁强谁弱,高手往往不在乎手中的兵器是什么的。个人而言,更高效的工具适合每个开发人员,在编写代码的时候花的时间少,就有更多的时间去设计代码,当然,使用一个陌生的IDE,效率肯定是比不上自己熟练的IDE的,所以为了节省诸君的学习成本,也为了更快地去接纳和熟练IDEA,所以周末之余,故作此文。

准备

  • 所有的电脑软件都有着相同的UI框架、菜单结构,对于每一个开发人员来说,基本的文件操作、项目操作、工作空间操作不成问题,不会讲到。
  • 涉及的其他工具(Maven、Git等)不会详细讲,只会讲到如何操作,想要深入学习,关注其他博文。


二、配置



在安装软件(JDK、Maven、Git、IDEA)搭建好环境后,要对IDEA进行一番配置,才能开始开发,每个人都有每个人的配置习惯,可以自己研究自己喜欢的配置,进入IDEA的配置 File | Settings(Ctrl+Alt+S)开始配置。

选择菜单或设置步骤使用 “|” 分开,后面操作一样


1. 主题与行为


选择自己喜欢的主题:Appearance & Behavior | Appearance | Theme

配置骚气的背景图片:Appearance & Behavior | Appearance | UI Options | Background Image...

在配置中选择合适的窗口选项:Appearance & Behavior | Appearance | Window Options

  • Animate windows:关闭动画效果
  • Show memory indicator:显示内存使用情况
  • Show tool window bars:关闭工具栏显示,按两次Alt键可以显示
  • Small labels in editor tabs:编辑器显示小标签

配置自己想看到的菜单项和工具栏:Appearance & Behavior | Menus and Toolbars

配置启动退出和保存同步:Appearance & Behavior | System Settings


2. 快捷键与编辑器

配置快捷键:Keymap

配置Git的Pull操作快捷键:Version Control Systems | Git | Repository | Pull 添加 Alt+P

配置Maven窗口显示快捷键:Tool Windows | Maven 添加 Alt+3

优化导包:Editor | General | Auto Import | Java

Insert imports on paste: All:粘贴的时候导入全部包

  • Add unambiguous imports on the fly
  • Optimize imports on the fly (for current project)

配置显示行号和方法分隔线:Editor | General | Appearance

  • Show line numbers
  • Show method separators

配置代码折叠规则:Editor | General | Code Folding

配置编辑器标签页:Editor | General | Editor Tabs

  • Show tabs in one row:多行显示标签
  • 配置高效的智能键:Editor | General | Smart Keys
  • Insert paired brackets (), [], <>:成双成对输入
  • Reformat block on typing '}':输入'}'后格式化代码
  • Use "CamelHumps" words:使用驼峰词,使用Ctrl+Righ/Left可以词内移动

微信图片111.gif

  • Jump outside closing bracket/quote with Tab:使用Tab键跳到括号/引号外面

配置等宽字体:Editor | Font

  • Enable font ligatures:使用连字符

配置文件和代码模板:Editor | File and Code Templates

配置文件编码:Editor | File Encodings

配置代码片段:Editor | Live Templates

微信图片112.gif


添加高效的代码片段可以提高效率


3. 编译构建


配置JDK环境:File | Other Settings | Structure for New Projects... | Project | Project SDK

配置Maven构建:Build, Execution, Deployment | Maven


  • 配置Maven主目录:D:/apache-maven-3.5.4
  • 配置用户Maven设置文件:D:\apache-maven-3.5.4\conf\settings.xml
  • 配置本地仓库:D:\apache-maven-3.5.4\repo
  • Always update snapshots:构建时总是更新依赖快照版本

4. 版本管理


配置Git管理:Version Control | Git

配置Git路径:D:\Program Files\Git\bin\git.exe


5. 运行内存


编辑IDEA安装目录下bin目录:D:\IntelliJ IDEA\bin\idea64.exe.vmoptions文件

 -Xms750m
 -Xmx750m

运行内存配置可以配置IDEA初时内存大小和最大内存数,根据自己电脑配置优化


三、视图



好的界面布局和主题,会让开发者更舒适。快速地能找到想要的信息,会让开发者事半功倍。

1. 工具


常用的工具栏默认位于IDEA界面的左、右、下三侧,也可以用鼠标悬停界面左下角图标弹出所有工具栏,你如果在前面主题与行为中配置隐藏工具栏显示,可以按两次 Alt 键显示。按键Esc可以帮助你从任何激活的工具栏返回到代码编辑。每个工具栏窗口顶部都会有一个Toolbar,可快速实现某些常用功能以及配置。

微信图片113.jpg

推荐使用快捷键弹出想要使用的工具栏,不建议修改默认快捷键,但常用的工具栏如果没有快捷键,应当自定义:

  • Alt+1:Project
  • Alt+2:Favorites
  • Alt+3:Maven(自定义)
  • Alt+4:Run
  • Alt+5:Debug
  • Alt+6:TODO
  • Alt+7:Structure
  • Alt+9:Version Control
  • Alt+F12:Terminal


1.1 Project

Project工具栏主要是管理项目文件和目录,所有的项目资源都能在能找到,而且它可以有多种管理形式,可以更好聚焦于当前工作。

管理形式

  • Project:显示项目所有项目资源
  • Packages:显示项目所有包,适合开发模式
  • Tests:显示项目所有测试资源,适合测试模式
  • Problems:显示项目所有问题,所有存在问题的代码都会列举
  • Changed Files:显示项目所有修改资源,VCS中修改未提交的代码

Toolbar

  • Scroll form source:从当前打开的文件定位文件树位置
  • Collapse All:折叠所有目录(Ctrl+-
  • Setting:打开工具栏设置
  • Flatten Packages:平铺展示所有包
  • Compact Middle Packages:折叠包名显示
  • Hide:隐藏工具栏(Shift+Esc

由于所有的工具栏都会有SettingHide,所以后面不会再说,在Setting里面会挑选几个常用的设置说。在Setting中的View Mode配置工具栏的显示模式:

  • Dock Pinned:钉住停靠显示
  • Dock Unpinned:不钉信停靠显示,激活其他工具栏隐藏
  • Undock:不停靠显示,类似Dock Unpinned
  • Float:浮动显示
  • Window:窗口模式显示,在全屏查看日志时非常有用


技巧

  • 在展开的文件树中,可以直接输入字母对类或包进行模糊搜索,快速定位目标。

微信图片114.gif

在很多的窗口都可以这样进行模糊搜索,可以自己大胆尝试,效率大大地提高,不过注意要使用英文输入法。

  • 使用 Left/Right 键可以快速折叠/展开当前目录
  • 使用 Alt+Home 可以导航当前项目


1.2 Favorites

Favorites可以用来管理开发人员高频使用的目录或文件,可以是包和类,或者是类中的某一行,它分为三类:

项目:在Project工具栏中对包或类右击选择 Add Favorites 添加

书签:在Project工具栏中对包或类或者代码某行,按 F11 添加书签

断点:打断点就会创建

在很多地方使用 F4 快捷键可以快速跳转到源码或目录位置。比如选中 Favorites 中的某个书签或断点,选中 VCS 中的某个记录文件。


1.3. Maven

Maven是管理Maven项目的工具集合,可以执行Maven的生命周期和插件,可以查看依赖等。

Toolbar微信图片115.png

  • Reimport All Maven Projects:重新导入Maven项目和依赖
  • Generate Sources and Update Folders For All Projects:创建源码更新目录
  • Download Sources and/or Documentation:下载源码或文档
  • Add Maven Projects:添加Maven项目
  • Run Maven Build:运行Maven生命周期或插件Goal
  • Execute Maven Goal:运行Maven插件Goal
  • Toggle Offline Mode:切换离线模式
  • Toggle 'Skip Tests' Mode:是否跳过测试

Setting

  • Group Modules:Maven模块分组展示
  • Always Show ArtifactId:总是展示项目ArtifactId

Profiles

选择激活Maven配置的Profile


1.4 TODO

TODO是管理项目代码中所有含有 // TODO 注释以及 // FIXME 注释的代码,这类特殊注释可以帮助开发人员处理未完成或待修复的事务。

微信图片115.jpg


1.5 Structure

Structure可以管理文件结构,包括类、接口等源文件的属性、方法等。

Toolbar微信图片116.png

  • Sort by Visibility:按可见性排序
  • Sort Alphabetically:按字母排序
  • Group Methods by Defining Type:方法按类型分组
  • Show Properties:显示属性
  • Show Fields:显示字段
  • Show non-public:显示非公共的
  • Show Inherited:显示继承的
  • Show Anonymous Classes:显示匿名类
  • Show Lambdas:显示Lambda
  • Autoscroll to Source:自动定位到源码
  • Autoscroll from Source:自动从源码定位


1.6 Version Control

Version Control是版本管理工具,这里使用Git为例,它一般会有两个固定标签页 Local ChangesLog,用来管理本地修改和提交日志。


Toolbar微信图片18.png

  • Refresh:刷新本地修改列表
  • Commit:提交(Ctrl+K
  • Revert:撤消选中文件的所有修改(Ctrl+Alt+Z
  • Show Diff:查看修改源文件的Diff(Ctrl+D
  • Changelists:把修改源文件分组
  • Shelve Silently:搁置修改的源文件(Ctrl+Alt+H
  • Group By:分组方式:Directory、Repository、Module
  • Ignored Files:忽略的文件
  • Expand All:展开所有目录(Ctrl++
  • Collapse All:折叠所有目录(Ctrl+-
  • Preview Diff:预览修改源文件的Diff


技巧

  • 查看Diff或者合并冲突的时候使用 F7/Shift+F7 查看下一个/上一个修改或冲突。
  • 在提交代码的时候,可以查看历史的Commit信息。

微信图片19.jpg

在提交代码的时候可以配置提交方式和提交前置事件。

提交方式:

  • Amend commit:和上一次提交合并,等于命令 git commit --amend
  • Sign-off commit:在提交信息后面追加用户签名

提交前置事件:

  • Alibaba Code Guidelines:阿里开发规约检测(插件)
  • Reformat code:格式化代码
  • Optimize imports:优化包的导入
  • Perform code analyses:代码分析
  • Check TODO(Show All):检查TODO

前置事件非常有用,在提交代码前会自动优化代码的格式以及检查出不合格的代码。

  • 在推送(Ctrl+Shift+K)代码到远程仓库的时候,可以配置推送Tag以及强推。
  • 在IDEA状态栏右边可以管理当前Git仓库的分支,包括本地仓库和远程仓库。

微信图片120.jpg

1.7 Event Log

Event Log 查看IDEA全局操作的所有日志,当某些操作异常了,可以在此找到答案。


1.8 Spring

Spring可以根据当前的Spring框架管理Bean和MVC,对于使用Spring框架的开发人员来说,非常方便。

微信图片121.jpg

微信图片122.jpg

技巧

  • 在Spring项目中,在自己创建的properties配置文件,在添加配置的时候,只有默认的application.properties文件才会有上下文提示,可以在项目右击菜单中 Open Module SettingsF4)中将properties文件添加到Spring上下文环境中。

微信图片123.jpg

1.9 Terminal

Terminal是IDEA的集成终端,方便执行命令行。


技巧

  • Windows系统的开发人员会觉得CMD的功能太弱鸡,所以会使用Git软件自带的Bash,可以将Bash集成到IDEA中。

IDEA集成终端配置Bash:File | Settings | Tools | Terminal | Application settings

Shell path:D:\Program Files\Git\bin\bash.exe

NOTE:如果终端出现乱码问题,可以百度解决,很简单。


2.0 Web

Web工具栏和Java Enterprise工具栏有点类似,在Web项目中,会管理Servlet、Filter、Listener,当然,如果我们的项目中只用到SpringMVC,而不是自己编写Servlet的话,这工具似乎没有太多的作用。


2. 代码

在代码视图中,主要是使用快捷键快速浏览一些代码的信息,这些快捷键在开发过程中也是大有用处的。

  • 查看当前变量、方法、类等的定义:Ctrl+Shift+I
  • 查看当前变量、方法、类等的文档注释:Ctrl+Q
  • 查看当前方法的参数信息:Ctrl+P
  • 查看当前输入的表达式信息:Ctrl+Shift+P
  • 查看当前上下文信息:Alt+Q(可以查看当前类文件类定义信息)

微信图片124.gif


技巧

  • 使用Ctrl+Shift+I快速查看当前枚举、常量的信息
  • 调用方法的时候使用Ctrl+P查看当前参数输入情况,由其是重载方法的情况
  • 使用Ctrl+Shift+P快速修改某段代码


3. 文件

在文件视图中,可以导航最近修改的文件或位置。

  • 查看最近修改的文件:Ctrl+E
  • 查看最近修改的位置:Ctrl+Shift+E

微信图片001.jpg

微信图片002.jpg


4. 窗口

窗口视图可以设置IDEA主界面的显示方式。

  • 演示模式:View | Enter Presentation Mode
  • 专注模式:View | Enter Distraction Mode
  • 全屏模式:View | Enter Full Mode
目录
相关文章
|
Cloud Native 网络协议 Java
云原生之容器编排实践-通过IDEA连接Docker服务
云原生之容器编排实践-通过IDEA连接Docker服务
249 0
|
网络协议 Java Unix
实践一下,用IDEA自动化部署Docker镜像,并没有你想象中的那么难
1、Docker开启远程访问 [root@izwz9eftauv7x69f5jvi96z docker]# vim /lib/systemd/system/docker.service #修改ExecStart这行 ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
|
XML IDE Java
一周实践终于完成IDEA安装spring,最强心得
一周实践终于完成IDEA安装spring,最强心得
257 0
一周实践终于完成IDEA安装spring,最强心得
|
XML JSON Java
IDEA高效实践(下)
八、构建 蛋变成鸡的一步,怎样处理好一个蛋,一窝蛋?
236 0
IDEA高效实践(下)
|
SQL JSON 安全
IDEA高效实践(中)
四、导航 想去哪儿就去哪儿,定位问题与查阅代码都很方便。
351 0
IDEA高效实践(中)
|
Java 程序员 API
Demo Show | 蚂蚁金服 mPaaS IDEA 插件实践
本文将结合上周在 JetBrains 开发者大会分享的《mPaaS IDEA 插件实践》,深入展开 mPaaS 在 IDEA 插件开发之路上踩过的坑和沉淀的思考,希望能够带来一些参考性。
1908 0
|
18天前
|
Java 编译器 Maven
使用intellij idea搭建SSM架构的maven项目 详细
使用intellij idea搭建SSM架构的maven项目 详细
35 4