Java效率工具之Intellij IDEA

LiWenD正在掘金發表於2018-05-24

一直猶豫這一篇要不要寫,因為我覺得IDE工具的選擇應該是極自由的事,蘿蔔白菜,各有所愛。說多了可能就會帶上個人的主觀偏見,所以,本文將採用功能列舉的方式,把我使用IDEA中覺得比較好玩好用的地方進行展示和說明。

個人之前也是使用過Eclipse和MyEclipse,後面聽朋友介紹IDEA,就花了一個週末的時間來適應IDEA,慢慢也就喜歡上IDEA了,再到後面,Eclipse就再沒開啟過。IDEA是我用過最好用的IDE。

IDEA是JetBrains公司開發的一款JVM語言的IDE工具,根據官網的描述,是最”智慧”的JVM語言開發工具。官網:www.jetbrains.com/idea/.

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA當時從Eclipse轉投IDEA的時候,難度最大的可能就是那些快捷鍵了,也是花了一兩週的時間才完全適應過來。本文並不是為了說服誰,權當是個人的一個歸納總結,有感興趣的朋友可以循著我列出的這些點去玩玩IDEA,說不定你也會喜歡TA。


1)IDEA的主題細膩,顏值高

最直觀的感受就是IDEA的黑色主題真的很漂亮,毫無違和感。直接上圖:

Java效率工具之Intellij IDEA

不僅如此,還支援更換背景圖,放個豪車做做背景更有動力了:

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA設定方式如下:

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA不僅如此,IDEA還有著豐富的主題庫。奉上地址:

color-themes.com/?view=index

但是IDEA有一點需要吐槽下:對中文字型的渲染比較差,在字型庫中找了很久才找到兩三種字型是可以接受的。如果各位有好看的字型,歡迎推薦,謝謝。


2)自帶反編譯器,可以方便的檢視原始碼

在呼叫JRE或第三方JAR包中的方法時,有時可能不能完全把握方法的使用。直接檢視原始碼,能讓我們更放心。同時,不需要引入資源包,這隻會額外增加負擔。

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA

3)支援結構檢視

原生支援結構檢視,同時,不僅支援Java類,甚至支援html、js等的結構解析。

如上圖的Structure視窗。再放一張JS版的。

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA

4)支援主流資料庫的連線及操作

IDEA直接整合了DataGrip,這是JetBrains公司一款資料庫客戶端軟體,支援市面上主流資料庫,就個人使用體驗來看,運算元據庫的效率和智慧化完勝navicat、sqlyog等客戶端。再也不用在各種工具中切換工作了。

Java效率工具之Intellij IDEAJava效率工具之Intellij IDEA


5)Terminal控制檯,可以連線Linux伺服器

包含Terminal控制檯,可以方便執行git maven gradle等指令。

Java效率工具之Intellij IDEAJava效率工具之Intellij IDEA

還可以連線遠端Linux伺服器,真正實現研發運維一體化工作。太棒了。

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA

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中是怎麼顯示的,請看下圖:

Java效率工具之Intellij IDEAJava效率工具之Intellij IDEA

可以看到有很多變黃的塊,那是提示處:

1處說明該呼叫可能存在NullPointerException,因為concat方法可能返回null,2處標誌需要填寫完整的方法說明。

類似此類的智慧警告不勝列舉,同時,IDEA還提供了自動修復的功能。


8)含有豐富的模板,還可以自定義模板

在設定介面,提供了Live Template模板設定功能,可以自定義模板,大大簡化重複程式碼的編寫量。

Java效率工具之Intellij IDEA

Java效率工具之Intellij IDEA

9)和多種框架進行了高效的融合

如:maven、gradle、spring、spring boot等,加快了專案的構建速度。同時,IDEA還支援其他JVM語言的開發,如Kotlin、Goovy、Scala等。


10) 豐富的外掛庫

IDEA擁有極其豐富的外掛庫,開啟設定介面中的Plugins介面,可以搜尋安裝各種外掛,有實用的,也有好玩的。

Java效率工具之Intellij IDEAJava效率工具之Intellij IDEA

也推薦幾款外掛,可以去把玩把玩:

Translation:翻譯外掛,看不懂的英文再也難不倒我;

Maven Helper:解析maven pom結構,分析衝突;

Gitee:整合國內的程式碼託管網站碼雲;

LiveEdit:對前端更好的支援;

Rainbow Brackets:可以讓你的括號更有個性;


全文完!


相關文章