IntelliJ IDEA 2019.3正式發佈,給咱們帶來哪些新特性?【享學Java】

每篇一句

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

前言

千呼萬喚始出來。自從JetBrains在今年7月24日發佈了IDEA 2019.2版本後,從9月份開始我便一直在關注此版本正式版的發佈。JetBrains公司在9月中旬就對外公佈了下一個主要版本 2019.3的Roadmap,並且立刻就發佈了第一個早期訪問版本( EAP 版本),所以我一直對它保持着關注。git

IntelliJ IDEA 2019.3版本的Roadmap承諾的是會在11月份完成RELEASE,還好它抓住了11月份的尾巴,在北京時間2019.11.28深夜發佈了這個2019.3正式版本程序員

(說明: PyCharm的2019.3版本截止到發文的今天還未正式RELEASE,我預估應該不會食言會趕在11月份結束以前發佈,可能就是今天晚上也說不定~)

先睹爲快:一張最新版的IDEA啓動圖送給你們
在這裏插入圖片描述segmentfault

what's new(新特性)

2019.3版本的核心關鍵詞是:Performance And Usability(性能和可用性)
它並無帶來特別亮眼的新特性,而提供了主要的性能和可用性改進(有點靜心修煉內功的感受有木有),包括更快的啓動速度,更容易安裝主題和動態插件(無需重啓),加強的VCS工做流,並增長了對微服務框架、MongoDB等的支持...windows

下面針對於這些新特性,咱們來具體的聊一聊性能優化

==性能(Performance)==

啓動時間更快

這是該版本最吸引人的新特性之一。官方給出了一張和以前版本啓動速度的對比圖以下:
在這裏插入圖片描述
可見不論是在Mac、Linux仍是在windows上新版本的啓動速度都是佔優的。服務器

雖然提高了只有1s左右,但足以看到 JetBrains程序員追求極致的心,這不就是咱們作技術該有的樣子嗎?
大型Gradle項目方面

這個性能優化,主要表如今下降導入大型Gradle項目時的峯值內存消耗。一樣的官方給出了對比圖以下:
在這裏插入圖片描述框架

響應式UI方面

該版本在UI層面修復了很是很是多的問題(1600+項之多,但基本對用戶無感知)。另外還修復了在Maven項目中編輯POM.xml文件的問題,以及其它問題歸類以下:eclipse

  • 在Maven項目中,完成建議如今能夠毫無延遲地顯示
  • 在大型項目中更快地處理VCS狀態更新(如git狀態)
  • 更好地處理被忽略的文件(如.gitignore)
  • 更快地呈現項目樹
  • 處理大量編輯器或調試器選項卡時更好的性能以及更快的速度
Java語言方面

Java類型推斷帶來了不少改進,它不只修復了各類編輯器凍結(假死),並且還加快了長方法調用鏈的Java類型推斷。當應用於多行時,「鏈接行」操做的速度更快。您還將體驗Java代碼的加速高亮顯示...maven

Kotlin語言方面

此版本內置了Kotlin 1.3.60版本支持,從而提供了更好的性能表現。編輯器

==可用性(Usability)==

動態插件/主題支持

今後版本開始,你能夠在不重啓IDE的狀況下加載和卸載主題和插件。

說明:此特性並非全部的插件都支持(不須要重啓),在將來的版本中把這種方法擴展到 大多數插件中,使插件管理儘量的簡單
但主題方面:你能夠所見即所得了

更明顯的滾動條顯示

你是否吐槽過IDEA的滾動條顏色也太淺了,滾動條看不不太清楚,着實影響了使用。若是你和我同樣有過這種困惑,那這個版本就能夠拯救你了。你只須要這麼設置(默認是不開啓的哦)便可:Settings/Preferences | Appearance & Behavior | Appearance,而後勾選上"Use contrast scrollbars"便可,先後的對比圖以下:
在這裏插入圖片描述
在這裏插入圖片描述

更平滑的鼠標滾動體驗

這個改進看起來很小,但實際很是有價值:它能讓你滾動鼠標更加的平滑,可能比德芙還絲滑~

自動配置Maven項目

在以前版本,不少時候咱們首次導入一個Maven項目進來的時候,須要手動配置一些東西(好比模塊、子模塊、maven設置等)。這個版本很暖心:讓這一切變爲了自動擋

更好的意圖猜想上下文

我以爲IDEA相比elipse最傑出的一點即是它的上下文機制:這讓你以爲IDEA是懂你意圖的(雖然有時候也猜錯),而不像eclipse同樣它是固化的。這不,此次又對它進行了優化,旨在能讓IDEA更加的懂你~

對Java13的特性提供了更好的支持

好比對它的"""三引號字符串提供了更好的支持等等...

支持了更多的模版語言

形如ex-Jade,Handlebars,EJS,Slim等模版語言

Field Call Hierarchy字段調用樹

這個是新增的支持,我我的很是喜歡。在IDEA中,咱們知道能夠很方便的查看方法、類的調用樹,但當要查看一個字段的調用樹時,這將變得十分不方便(以前版本不支持)。
以前版本咱們只能知道某個屬性它被哪些地方使用到了(Find Usages),形以下面這樣:
在這裏插入圖片描述
這樣其實僅僅只是找出了使用處,但層次結構並看不出來(調用棧)。而此版本新增了一個能力:能看到屬性被調用的地方的層次結構,形如這樣:
在這裏插入圖片描述
該功能名稱是:Call Hierarchy,默認快捷鍵是Ctrl + Alt + H

Git的使用加強

這種使用層面的就一筆總結帶過:

  • 爲了避免混淆。檢出分支會跟蹤上游分支了,新增:New Branch from Selected選項便捷檢出
  • 想向遠程push一個分支,再也不須要先檢出再push了,而是能夠選中後直接push

在這裏插入圖片描述

  • 經過VCS克隆項目時,無論你是git仍是svn,體驗上保持了統一
  • 提高了merge conflicts解決衝突時候的深刻性
  • 更好地顯示 Git PR 信息的時間軸
  • 強制從忽略列表向 VCS 添加文件

    - 解釋:在以前版本中,若是文件位於忽略列表,則沒法將文件添加到 VCS。今後版本開始,對該限制進行了處理,如今即便文件位於 .gitignore(或 .hgignore)列表中,**咱們也能夠將文件強制添加到 Git**(或 Mercurial)

==新的框架和技術==

說明:這些特性是旗艦版纔有的新特性,社區版是沒有的。

微服務框架支持

新增了對微服務框架Micronaut, Quarkus, and Helidon的支持。

這對於咱們使用Spring Boot的小朋友,貌似沒啥卵用

Endpoints視圖

在這裏插入圖片描述
支持Spring MVC,WebSocket、Jax等框架的端點...

Spring Web Flux支持

MongoDB支持

這是不少MongoDB使用者期待已久的功能,終於在這個版本里被加入進來了。
在添加了MongoDB數據源以後,在database explorer中可查看集合和字段,運行查詢並查看查詢結果。這個在未來的版本中還會繼續擴展對MongoDB的支持到更多的功能(是否是有種感受:MongoDB確實還挺火的,畢竟IDEA都還木有支持Elasticsearch勒~)

==修復Fix==

  • IDE如今能夠經過自制程序檢測Gradle安裝到的目錄
  • 用戶界面已經獲得了改進,因此如今更容易手動設置Gradle主目錄
  • IntelliJ IDEA如今支持經過KWallet在Linux上存儲密碼
  • 對於JavaFX項目,IDE能夠在Scene Builder選項卡中顯示帶有嵌入場景生成器的FXML文件
  • 當SVN服務器不可用時,SVN的「身份驗證要求」對話框再也不彈出
  • IDE如今在索引Git日誌時顯示一個進度條(新增)
  • 如今,您能夠在文件歷史視圖和VCS註釋中選擇查看什麼時候編寫了更改或提交時間戳(新增)
  • JetBrains 運行時升級:主要是JBR 8/11的升級(因爲開發者不用關心,略)



2019.1/2版本主要新特性回顧

爲了更好的讓你們瞭解到IDEA的新特性,提升你的工做效率,此處我附贈上前兩個版本的主要新特性,供你參考學習。

總結

工欲善其事必先利其器,提供工做效率的一個重要手段之一:強大的工具。19年來(2000-2019)JetBrains公司提供的JetBrains 全家桶給咱們帶來一個又一個的驚喜。
從某種程度上講,正是由於有了像IDEA、PyCharm...這種很是優秀的IDE,才得以讓咱們在工做、學習過程當中連續得到便利性很好的體驗,因此它的出現必定程度上是促進了整個社會的發展的,感謝捷克的這家公司爲人類作出的貢獻。

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

== 若對Spring、SpringBoot、MyBatis等源碼分析感興趣,可加我wx:fsx641385712,手動邀請你入羣一塊兒飛 ==
== 若對Spring、SpringBoot、MyBatis等源碼分析感興趣,可加我wx:fsx641385712,手動邀請你入羣一塊兒飛 ==

相關文章
相關標籤/搜索