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. 修改MongDB的数据类型

    语法: db.集合.find({"列":{$type:2}}).forEach(function(x){ x.列=parseFloat(x.列);db.order.save(x) ...

  2. 在html页中添加视频的几种方式

    1.avi格式代码片断如下: <object id="video" width="400" height="200" border=& ...

  3. Python中使用百分号占位符的字符串格式化方法中%s和%r的输出内容有何不同?

    Python中使用百分号占位符的字符串格式化方法中%s和%r表示需要显示的数据对应变量x会以str(x)还是repr(x)输出内容展示. 关于str和repr的关系请见: <Python中rep ...

  4. 老猿Python部分代码样例

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 PyQt编程实战:通过eventFilter监视QScrollArea的widget()的Paint ...

  5. PyQt(Python+Qt)学习随笔:Qt Designer中toolBar的toolButtonStyle属性

    tooButtonStyle属性保存主工具栏按钮的样式设置,用来表示工具栏按钮的文字和图标怎么显示. 该属性的可设置值类型为枚举类型Qt.ToolButtonStyle,它包含如下值: 该属性的缺省值 ...

  6. 攻防世界 ctf web进阶区 unserialize

    进入到题目的界面,看到以下源码 构造payload=?code=O:4:"xctf":1:{s:4:"flag";s:3:"111";} 结 ...

  7. Java 线程安全问题的本质

    原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94 目录: 线程安全问题的本质 理解CPU JVM虚拟机类比于操作系统 重排序 汇总 一些解释 ...

  8. 一种使用 Redis 深度驱动的,为构建轻量级分布式应用程序(Microservices)的工程方案

    Hydra 是一个轻量级的 NodeJS 库,用于构建分布式计算应用程序,比如微服务.我们对轻量级的定义是:轻处理外部复杂性和基础设施依赖 -- 而不是有限的轻处理. Hydra 声称对基础设施的依赖 ...

  9. CF1439C Greedy Shopping

    题解 尝试做一下,感觉是每次取一段前缀和,这样就相当于让我们证明在 \(a_i\le 10^{12}\) 时,不可能构造出隔一个取一个的情况(\(n=10^5\)). a[i]: 1, 2, 3, 5 ...

  10. Codeforces Edu Round 65 A-E

    A. Telephone Number 跟之前有一道必胜策略是一样的,\(n - 10\)位之前的数存在\(8\)即可. #include <iostream> #include < ...