https://blog.csdn.net/X5fnncxzq4/article/details/83829223

工欲善其事,必先利其器。对于程序员来说,具有生产力的工具能让你事半功倍,心情大好。
两个月前从Eclipse转到了InteliJ IDEA,原先常用Eclipse如同身边的保温杯,如果不出毛病,大概我是不会考虑换掉他。中间想偶尔尝试一下IDEA,因为遇到各种不适应,就退回来了。这次要换掉Eclipse是因为一个莫名的bug导致我项目编译卡死,反复出现好几次后,决定弃用他。

Tips:下面博文中的图片都比较大,可以右键在新标签打开查看大图!

2. IDEA 有什么好?

换到IDEA并渐渐适应之后,用一个词形容这款IDE,就是:现代。
再看Eclipse,如同埃及金字塔,精巧但粗粝、宏伟但迟钝。而IDEA如同太空堡垒,精致大气、舒适内敛。
因为我对IDEA非常有好感,决定向你推销一下。让我们先来看看他那些让人不可自拨的功能吧:

2.1 插件安装

在Eclipse上安装一款插件,要到marketplace中搜索,点击install。因为跨国网络访问,所以一般下载插件会很慢。
在IDEA上安装插件,逻辑相似,Ctrl+Alt+S呼出Settings,找到Plugins进行搜索,如果没有找到会跳转到远程仓库,然后install即可。
不过对于有些插件来说,IDEA上的安装流程比Eclipse顺畅了不止一个级别,比如大家常用的lombok,Eclipse上安装过程繁琐不说了,IDEA上呢:

img

如果没有安装,点击右侧install,然后重启IDEA即可。

不光是lombok,诸如GoLang、C、Python的这种语言扩展插件,IDEA上的体验也比Eclipse好上一个等级。例如Go插件:

img

IDEA自带了智能提示,不用配置,开箱即用。最重要的是,在IDEA中开发Go和开发Java一样顺手,快捷键是一致的,提示与代码生成、插入是一致的,这在Eclipse上几乎不可实现。我安装过Eclipse的Python语言扩展插件,和在Eclipse上编写Java是有一定落差的,而在IDEA上不会,他给你的体验是一致的,这个必须赞。

更棒的时,IDEA自带了一些非常好用的插件,如HTTP Client:

img

2.2 “专注”窗口

再来看一个“现代”的例子,在IDEA中窗口都是可定制的,如同太空堡垒中的房价可移动一般。
在IDEA中你的界面可能是这样的:

img

只需要按下Ctrl+Shift+F12就会进入专注模式,变成了这样:

img

所有窗口都隐藏起来了。
我为什么如此喜欢IDEA的窗口呢,是因为他可以层层叠叠如这样:

img

也可以进入“专注”模式,清清爽爽。

2.3 调试

在Eclipse中调试,你是没有一种叫“即时窗口”的东西的,他是什么东西呢:

img

你可以在调试期间打开“即时窗口”,在其中输入变量和表达式,他会直接给出你答案,类似Chrome调试时的Console。

2.4 Git 的使用

在IDEA中使用Git,感觉非常现代,一反Eclipse中Git管理的笨重和粗糙。只需要Ctrl+K就会出现Commit界面,Revert、Diff等等让你体验非常自然。

3. 怎么走出 Eclipse 的舒适区

简单看了一下IDEA的优点,不知道你是否有点心动呢?Eclipse如同一条旧毛毯,有感情但却不舒适。如果你像我一样有不适应的顾虑,下面我会详细说一下要转到IDEA需要做的一些工作。

3.1 Maven 项目导入和启动 Tomcat

首先要转变的一个观念是IDEA中没有工作空间的概念,而用了模块(Modules)来代替。
当你第一次打开IDEA,走完前置配置之后,可以“Project From Existing Sources”--从现有源码导入项目,如果是Maven项目,直接选中pom.xml文件即可。
重要的是,如果你想如Eclipse中一样把很多项目放在一个空间下,你可以这么做:

  • Ctrl+Shift+Alt+S打开项目结构

  • 找到Modules,点击上面的加号,选择Import Modules,再选择pom.xml文件即可

  • 如果你想一个项目一个窗口,那么还是可以选择“Project From Existing Sources”

如果你的项目用的是Spring Boot,那么打开启动类,点击右侧小图标:

img

就可以直接启动这个类了。


如果你的项目需要用Tomcat来启动,那么找到这个地方:

img

点击Edit Configurations…,在Templates中找到Tomcat Server,配置Local。
配置完之后,点击左上角的加号,选择Tomcat Server--Local,配置端口号等等。重点来了,你需要在Deployment选择卡中点击加号,配置Article,Article选择war exploded类型的war,点击ok完成配置。
选中你的配置,点击Run(或Shift+F10)即可运行Tomcat应用。

3.2 快捷键映射

要换一个IDE开发,最需要适应的莫过于快捷键的使用习惯,下面我对来个IDE常用的快捷键做了一个映射,供大家参考:

操作 Eclipse IDEA
删除一行 Ctrl+D Ctrl+Y
关闭当前窗口 Ctrl+W Ctrl+F4
上移、下移一行 Alt+↑、↓ Ctrl+Alt+↑、↓
回退操作 Ctrl+Z Ctrl+Z
反向回退 Ctrl+Y Ctrl+Shift+Z
回到上一处编辑 Alt+← Ctrl+Alt+←
提取变量 Ctrl+1 And Ctrl+L Ctrl+Alt+V
添加或取消注释 Ctrl+/ Ctrl+/
生成Getter、Setter Alt+Shift+S Alt+Insert
光标移到相同的变量 Ctrl+K F3或Ctrl+F7
打开类结构 Ctrl+O Ctrl+F12
显示类继承层次 Ctrl+T Ctrl+H
查看方法调用链 Ctrl+Shift+H Ctrl+Alt+H
文件内容搜索 Ctrl+H Ctrl+Shift+F
按文件名搜索 Ctrl+Shift+R Ctrl+Shift+N
格式化代码 Ctrl+Shift+F Ctrl+Alt+L
代码折叠与打开 Ctrl+Shift+*、/ Ctrl+Shift+加号、减号
try-catch包围 Alt+Shift+S Ctrl+Shift+T

3.3 快捷键被占用问题

IDEA中的默认快捷键有可能被其他程序占用,例如Windows上IDEA的智能提示是Ctrl+Space,这个快捷键会被系统输入法切换中英文占用,建议修改为Alt+引号。Ctrl+Alt+S打开Settring,如图:

img

其他有可能被占用的快捷键还有调试的单步跳过F8,try-catch包围的Ctrl+Shift+T,我分别改为了F10和Alt+T。

3.4 关闭部分“建议”

使用IDEA过程中,你会发现一些如Office Word似的拼写检查,如果你想关闭他,如图:

img

从 Eclipse 到 IDEA,金字塔到太空堡垒【转]的更多相关文章

  1. idea备忘

    1.idea 最近打开的文件个数 File->Settings->Editor->General->Editor Tabs->Tab Closing Policy-> ...

  2. JAVA WEB 的JSP(9*9乘法表+*型金字塔)

    运行环境及工具: (Tomcat7) + (JAVA JDK)+ (Eclipse for J2EE) 输出9*9乘法表 代码片段的练习 增加一些简单的JS功能 <%@ page import= ...

  3. Eclipse配置Tomcat,访问404错误

    我从官网上面下载的tomcat6,直接启动发现正常使用,但是在Eclipse绑定后启动,访问localhost:8080,本来应该是tomcat的主页,但是却报了404错误. 百度搜索了一下,原来是t ...

  4. eclipse 快捷键大全

    注:因eclipse版本.电脑配置等原因 有些快捷键可能导致不可用(遇到些许问题可在下方评论) [Ct rl+T] 搜索当前接口的实现类 1. [ALT +/]    此快捷键为用户编辑的好帮手,能为 ...

  5. tomcat开发远程调试端口以及利用eclipse进行远程调试

    一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里:  SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...

  6. Eclipse中启动tomcat报错java.lang.OutOfMemoryError: PermGen space的解决方法

    有的项目引用了太多的jar包,或者反射生成了太多的类,异或有太多的常量池,就有可能会报java.lang.OutOfMemoryError: PermGen space的错误, 我们知道可以通过jvm ...

  7. 修改eclipse皮肤

    习惯了vim黑色背景的程序猿们想必用eclipse时会倍感的不适应吧,不过没关系,因为eclipse的皮肤是可以自己定制的! 下面是我电脑上的eclipse界面,看到这个是不是找回了vim的感觉呢? ...

  8. 安装eclipse的maven插件

    我们团队用maven来管理项目需要的库文件,其实以前都没听过maven,第一次接触这个,师兄要我直接去装下这个,开始以为还挺简单的,没想到中间遇到了一些小麻烦,现在把我成功安装maven的过程分享下, ...

  9. eclipse如何添加Memory Analyzer

    ①启动Eclipse,并打开"Install New software..."对话框: ②点击Add,如图: ③点击OK,最后一直点next,完成

随机推荐

  1. dart时间处理的几个方法

    一.时间处理的方法 1.获取当前时间 new DateTime.now(); 2.设置时间 new DateTime(2020, 11, 11, 12, 37 , 36); 3.解析时间 DateTi ...

  2. Python中倒转输入序列元素顺序的reversed函数

    reversed函数将输入的序列的元素倒转后存储到一个类型为"reversed"可迭代对象,不能直接访问,可以转换为其他对象如列表或通过for循环方法访问. 注意:这里是倒转不是倒 ...

  3. 第8.24节 使用__subclasses__查看类的直接子类

    在<第8.9节 Python类中内置的__bases__属性>中介绍了__bases__这个类的特殊变量可以查看类的直接父类,而__subclasses__() 方法的使用则与__base ...

  4. 第二十三章、 Model/View便利类表格部件QTableWidget详解

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 表格部件为应用程序提供标准的表格显示工具,在表格内可以管理基于行和列的数据项,表格中的最大 ...

  5. 第14章 web前端开发小白学爬虫结束语

    老猿学爬虫应该是2019年7月初开始的,到现在2个多月了,有段时间了,这部分一直是老猿期待能给大家带来收获的,因为老猿爬虫实战应用的场景与网上老猿已知的场景基本都不一样,是从复用网站登录会话信息来开发 ...

  6. PyQt(Python+Qt)学习随笔:部件的inputMethodHints属性

    inputMethodHints属性只对输入部件有效,输入法使用它来检索有关输入法应如何操作的提示,例如,如果设置了只允许输入数字的标志,则输入法可能会更改其可视组件,以反映只能输入数字.相关取值及含 ...

  7. java基础之二:取整函数(Math类)

    在日常开发中经常会遇到数字的情况,有关数据的场景中会遇到取整的情况,java中提供了取整函数.看下java.lang.Math类中取整函数的用法. 一.概述 java.lang.Math类中有三个和取 ...

  8. [SQL Server]多次为 '派生表' 指定了列 'id'

    问题: 原因: 因为派生表oo中出现了两个同样的'ID'属性,所以会报[多次为 'o' 指定了列 'ID']的错误. 只需要把第二个星号替换成所需要的列名并把重复字段重命名就好了 解决方案:

  9. 能否让APP永不崩溃—小光与我的对决

    前言 关于拦截异常,想必大家都知道可以通过Thread.setDefaultUncaughtExceptionHandler来拦截App中发生的异常,然后再进行处理. 于是,我有了一个不成熟的想法.. ...

  10. 落谷 P1410 子序列

    题目链接. Discription 给定长度为 \(n\) 的序列 \(A\)(\(n\) 为偶数),判断是否能将其划分为两个长度为 \(\dfrac{N}{2}\) 的严格递增子序列. Soluti ...