一直猶豫這一篇要不要寫,由於我以爲IDE工具的選擇應該是極自由的事,蘿蔔白菜,各有所愛。說多了可能就會帶上我的的主觀偏見,因此,本文將採用功能列舉的方式,把我使用IDEA中以爲比較好玩好用的地方進行展現和說明。
html
我的以前也是使用過Eclipse和MyEclipse,後面聽朋友介紹IDEA,就花了一個週末的時間來適應IDEA,慢慢也就喜歡上IDEA了,再到後面,Eclipse就再沒打開過。IDEA是我用過最好用的IDE。前端
IDEA是JetBrains公司開發的一款JVM語言的IDE工具,根據官網的描述,是最」智能」的JVM語言開發工具。官網:www.jetbrains.com/idea/.git
當時從Eclipse轉投IDEA的時候,難度最大的可能就是那些快捷鍵了,也是花了一兩週的時間才徹底適應過來。本文並非爲了說服誰,權當是我的的一個概括總結,有感興趣的朋友能夠循着我列出的這些點去玩玩IDEA,說不定你也會喜歡TA。spring
1)IDEA的主題細膩,顏值高sql
最直觀的感覺就是IDEA的黑色主題真的很漂亮,毫無違和感。直接上圖:數據庫
不只如此,還支持更換背景圖,放個豪車作作背景更有動力了:
編程
設置方式以下:後端
不只如此,IDEA還有着豐富的主題庫。奉上地址:bash
color-themes.com/?view=index服務器
可是IDEA有一點須要吐槽下:對中文字體的渲染比較差,在字體庫中找了好久才找到兩三種字體是能夠接受的。若是各位有好看的字體,歡迎推薦,謝謝。
2)自帶反編譯器,能夠方便的查看源碼
在調用JRE或第三方JAR包中的方法時,有時可能不能徹底把握方法的使用。直接查看源碼,能讓咱們更放心。同時,不須要引入資源包,這隻會額外增長負擔。
3)支持結構視圖
原生支持結構視圖,同時,不只支持Java類,甚至支持html、js等的結構解析。
如上圖的Structure視窗。再放一張JS版的。
4)支持主流數據庫的鏈接及操做
IDEA直接集成了DataGrip,這是JetBrains公司一款數據庫客戶端軟件,支持市面上主流數據庫,就我的使用體驗來看,操做數據庫的效率和智能化完勝navicat、sqlyog等客戶端。不再用在各類工具中切換工做了。
5)Terminal控制檯,能夠鏈接Linux服務器
包含Terminal控制檯,能夠方便執行git maven gradle等指令。
還能夠鏈接遠程Linux服務器,真正實現研發運維一體化工做。太棒了。
6)先後端代碼一體化工做臺
IDEA不只僅是智能化的後臺代碼IDE,也是一款優異的前端開發工具。本質上來講,IDEA集成了JetBrains另外一款大名鼎鼎的IDE:WebStorm。安裝一些必要的插件更是能讓前端開發事半功倍。
7)智能化提醒無處不在
IDEA是一款智能的軟件,對Spring Boot、Java、Html、JS等等都能作到最大化的智能提示。極大提升了編程效率。智能提醒還體現一點:代碼檢查。
代碼檢查能讓咱們編寫出更加高效整潔更加可維護的代碼,能在編碼過程當中實時提示,不須要手動用Findbugs等工具去檢測,從側面也提高了效率。
好比:使用eclipse很容易寫出這種代碼:
import com.google.common.base.Strings;
/**
* Created by Liwen.D on 2017-08-04.<br/>
* DESC: 測試空指針
*/
@SuppressWarnings({"unused"})
public class TestClass {
private static final String SEPARATOR = "&";
public static void main(String[] args) {
String result = concat(args[0], args[1]);
String upper = result.toUpperCase();
System.out.println("upper:: " + upper);
}
/**
* 字符串鏈接
* @param param1
* @param param2
* @return
*/
private static String concat(String param1, String param2) {
if (Strings.isNullOrEmpty(param1) && Strings.isNullOrEmpty(param2)) return null;
else if (Strings.isNullOrEmpty(param1)) return param2;
else if (Strings.isNullOrEmpty(param2)) return param1;
return param1 + SEPARATOR + param2;
}
}複製代碼
這段代碼可能不太美觀,但卻能說明問題,咱們來看下載IDEA中是怎麼顯示的,請看下圖:
能夠看到有不少變黃的塊,那是提示處:
1處說明該調用可能存在NullPointerException,由於concat方法可能返回null,2處標誌須要填寫完整的方法說明。
相似此類的智能警告不勝枚舉,同時,IDEA還提供了自動修復的功能。
8)含有豐富的模板,還能夠自定義模板
在設置界面,提供了Live Template模板設置功能,能夠自定義模板,大大簡化重複代碼的編寫量。
9)和多種框架進行了高效的融合
如:maven、gradle、spring、spring boot等,加快了項目的構建速度。同時,IDEA還支持其餘JVM語言的開發,如Kotlin、Goovy、Scala等。
10) 豐富的插件庫
IDEA擁有極其豐富的插件庫,打開設置界面中的Plugins界面,能夠搜索安裝各類插件,有實用的,也有好玩的。
也推薦幾款插件,能夠去把玩把玩:
Translation:翻譯插件,看不懂的英文再也難不倒我;
Maven Helper:解析maven pom結構,分析衝突;
Gitee:集成國內的代碼託管網站碼雲;
LiveEdit:對前端更好的支持;
Rainbow Brackets:可讓你的括號更有個性;
全文完!