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,手动邀请你入群一块儿飞 ==

相关文章
相关标签/搜索