IntelliJ IDEA 2019.1 新特性

盼望着, 盼望着, 春天來了, JB的新年初版IDEA終於發佈了!閒言少敘, 介紹下新特性吧
css

  • 主題

自定義UI

經過書寫配置文件的方式自定義UIjava

High contrast

高對比度主題套餐, 硬核的朋友可嘗試一下node


  • Java

Switch

  • 在Java12的新特性中, switch表達式能夠被加強爲相似箭頭函數的形式;

  • 能夠合併一樣處理邏輯的switch選項.

變量提取

  • 變量提取獲得了加強, 如今能夠將相同語義的代碼進行提取

  • 根據上下文的不一樣, IDE會將if表達式轉換爲三元表達式.

  • 三元表達式中更精確的警告

  • 在以前的IDEA中, 其對非空限定的三元表達式的檢測爲"高亮整個表達式", 如今能夠精確高亮違法約定的那部分了;

表達式中的數學檢測

註解

  • @Contract 註解

@Contract 註解用於標識方法所需遵循的限定, 它有2個屬性:git

value: 包含描述參數和返回值之間因果關係;docker

pure:  用於只返回新值不更改對象狀態的方法, 參見數據庫

If its return value is not used, removing its invocation will not affect program state or change the semantics, unless the method call throws an exception (exception is not considered to be a side effect). A method should not be marked as pure if it does not produce a side effect by itself, but it could be used to establish the happens-before relation between an event in another thread, so that changes performed in another thread might become visible in current thread after invocation of this method. On the other hand, some synchronized methods could be marked as pure, because the purpose of synchronization here is to keep the collection internal integrity rather than to wait for an event in another thread. "Invisible" side effects (such as logging) that do not affect important program semantics are allowed. app

  • 根據參數所使用的的方法, IDEA會建議加上註解

堆棧跟蹤

  • 如今能夠在進行堆棧跟蹤時直接定位到具體位置了, 而非之前的只定位到所屬行.

  • Gradle

  • 委託給Gradle

如今能夠將構建和運行操做委託給Gradle(支持對每一個項目單獨分級)less

能夠爲同一個項目的測試運行程序和應用程序運行程序設置不一樣的值 (此版本IDEA中默認將項目委指定爲Gradle管理)編輯器

  • 從測試任務列表中選擇

Gradle支持從測試任務列表中進行選擇
ide

  • HotSwap觸發構建

  • Maven

  • 構建輸出位置

構建的過程的輸出位置從run窗口轉移到build窗口

  • 依賴視圖加強

  • 顯示依賴衝突

  • 顯示無邊界視圖

  • 顯示相鄰節點

  • 顯示依賴路徑

  • Version Control

  • 修正和壓並

修正和壓並操做被加入到了VCS選項中

  • Cherry-pick

cherry-pick能夠從VCS日誌中選擇並應用

  • 傳入和傳出

查看傳入和傳出有效性

須要在Settings->Version Control->Git中修改

  • 還原已刪除的文件

  • 批量選擇

比較不一樣時能夠經過全選框批量選擇

  • "個人同事git名太長怎麼辦?"

別擔憂, 能夠只看首字母

  • Diff

  • 拖拽到比較

如今文件比對能夠把要比較的文件直接拖拽到比較區了

  •   互換差別內容

  • 更精確的高亮

如今能夠精確到字符級別了

  • 最近(變更的)位置

CMD(Ctrl)+Shift+E 可查看最近訪問和修改的痕跡, 按最近變更時間排序

  • JVM 調試器

支持「synchronized」、「assert」和「switch」

跳出代碼塊

能夠在調試過程當中跳出當前所屬的代碼塊(媽媽不再用擔憂個人for循環了)

指哪跑哪

選中行號後可選擇"運行到所選位置"

  • Scala

理解

加強了對錯誤高亮 / 隱式提示 / GoTo / Quick Definition / Quick Documentation等的理解

查找隱式使用處

Find Usages能夠做用於隱式定義、應用/不該用的方法、理解方法和單個抽象方法(SAM)類型


反編譯

能夠將沒有源碼的.class文件反編譯爲.java文件了

Scalafmt

在2018.2版本中已經加入了對Scalafmt的支持, 如今這個功能又獲得了加強——可支持自定義的Scalafmt版本並能夠經過IDEA下載

Hocon

Hocon插件被分離爲一個獨立的插件, 你能夠按需啓用/棄用

錯誤高亮

變更區域包括:

1.局部統一和類變量統一;

2.構造函數高亮,調用私有構造函數;

3.implicit0;

4.多態lambda;

5.Simulatrum:  higher-arity構造函數。


  • Groovy

支持Groovy3.0的Java風格lambda語法. IDEA提供了代碼補全, 高亮和類型推斷等編輯功能, Groovy的檢測和提示將在其中能夠正常工做. Java風格的lambda可使用格式化和調試.

  • Kotlin

內置的Kotlin插件版本被升級到v1.3.21版本

動態模板生成main時爲空參

kotlin1.3開始main方法能夠不帶參數

main縮寫生成的是空參版, maina縮寫生成的是帶參版

String轉化

能夠優化掉沒必要要的toString()

lambda轉換匿名類

代碼風格提示

  • JavaScript & TypeScript

解構

如今支持JS和TS中的解構了

Promise轉Async/Wait

更新CSS和HTML文檔


JavaScript debug 控制檯

Javascript和node.js調試工具窗口中的交互式調試器控制檯如今使用樹視圖顯示對象,它支持使用css設置日誌消息的樣式,並使用console.group()和console.groupend()對其進行分組。此外,它還容許您過濾掉任何類型的日誌消息。

  • Docker

IDEA容許在從dockerfile構建或使用docker compose(docker compose.yml)建立的容器中進行調試Java程序。

  • K8S

外部資源支持


Helm

如今能夠在helm資源模板文件的圖表中使用重命名重構(須要安裝Go模板插件)

  • 編輯器

導出編碼格式

Soft-wraps

Soft-wraps能夠指定適用範圍(文件類型)了


鍵位對話框

初次在Windows上按Ctrl+Y時會彈出鍵位此對話框

Sublime Text鍵位

 在Keymap中可使用Sublime Text這個預設鍵位了.

VS Code鍵位

提供了VS Code鍵位插件以支持使用VS Code的鍵位

  • Spring Cloud Stream

編輯器支持

IDEA如今爲Spring Cloud流項目提供了豐富的編輯支持,例如語法突出顯示、檢查、快速修復和代碼補全(包括application.properties或application.yml文件中值和引用的綁定器名稱補全)。

生產者和消費者之間的導航

  • Thymeleaf

如今能夠導航到「th:replace」和「th:include」屬性中引用的模板片斷。代碼補全和重命名重構如今也適用於這些包含和替換的片斷。

  • Database Tools

支持更多數據庫

Intellij IDEA支持這些新數據庫:

Greenplum——基於PostgreSQL的分析數據庫。

Vertica——面向列的存儲,用於處理大量數據。

ApacheHive——創建在Hadoop之上的數據倉庫,用於提供數據查詢和分析。

選項

變動了鏈接對話框的外觀,並添加了幾個重要的設置。如今,您能夠在「啓動腳本」字段中添加一個SQL查詢,該查詢將在每次創建鏈接時運行。此外,還能夠設置超時,在超時以後,IDE將自動斷開鏈接,或者設置每隔n秒運行一次查詢的時間間隔,以保持鏈接的活動狀態。


  • 結語

工欲善其事必先利其器   ——《論語·衛靈公》

提升工做效率的一個手段之一是使用強大的工具, 18年來JetBrains公司給咱們帶來了一次又一次驚喜. 必定程度上講, 正是有着像IDEA,PyCharm等優秀的軟件, 咱們才得以在工做學習過程當中可以持續性得到便利性的良好體驗, 它們的誕生也必定程度上促進了當今社會的發展.

向那些孜孜不倦爲行業提供優秀工具的人們致敬 !

相關文章
相關標籤/搜索