每篇一句

工欲善其事必先利其器 ——《论语·卫灵公》

前言

千呼万唤始出来。自从JetBrains在今年7月24日发布了IDEA 2019.2版本后,从9月份开始我便一直在关注此版本正式版的发布。JetBrains公司在9月中旬就对外公布了下一个主要版本 2019.3的Roadmap,而且马上就发布了第一个早期访问版本( EAP 版本),因此我一直对它保持着关注。

2017年9月我首次接触使用IDEA,从最初的觉得别扭,到现在的回不去STS了,这就是IntelliJ产品的魅力~

IntelliJ IDEA 2019.3版本的Roadmap承诺的是会在11月份完成RELEASE,还好它抓住了11月份的尾巴,在北京时间2019.11.28深夜发布了这个2019.3正式版本

(说明:PyCharm的2019.3版本截止到发文的今天还未正式RELEASE,我预估应该不会食言会赶在11月份结束之前发布,可能就是今天晚上也说不定~)

先睹为快:一张最新版的IDEA启动图送给大家

what’s new(新特性)

2019.3版本的核心关键词是:Performance And Usability(性能和可用性)
它并没有带来特别亮眼的新特性,而提供了主要的性能和可用性改进(有点静心修炼内功的感觉有木有),包括更快的启动速度,更容易安装主题和动态插件(无需重启),增强的VCS工作流,并增加了对微服务框架、MongoDB等的支持…

下面针对于这些新特性,我们来具体的聊一聊

性能(Performance)

启动时间更快

这是该版本最吸引人的新特性之一。官方给出了一张和之前版本启动速度的对比图如下:

可见不管是在Mac、Linux还是在windows上新版本的启动速度都是占优的。

虽然提升了只有1s左右,但足以看到JetBrains程序员追求极致的心,这不就是我们做技术该有的样子吗?

大型Gradle项目方面

这个性能优化,主要表现在降低导入大型Gradle项目时的峰值内存消耗。同样的官方给出了对比图如下:

响应式UI方面

该版本在UI层面修复了非常非常多的问题(1600+项之多,但基本对用户无感知)。另外还修复了在Maven项目中编辑POM.xml文件的问题,以及其它问题归类如下:

  • 在Maven项目中,完成建议现在可以毫无延迟地显示
  • 在大型项目中更快地处理VCS状态更新(如git状态)
  • 更好地处理被忽略的文件(如.gitignore)
  • 更快地呈现项目树
  • 处理大量编辑器或调试器选项卡时更好的性能以及更快的速度

Java语言方面

Java类型推断带来了很多改进,它不仅修复了各种编辑器冻结(假死),而且还加快了长方法调用链的Java类型推断。当应用于多行时,“连接行”操作的速度更快。您还将体验Java代码的加速高亮显示…

Kotlin语言方面

此版本内置了Kotlin 1.3.60版本支持,从而提供了更好的性能表现。

可用性(Usability)

动态插件/主题支持

从此版本开始,你可以在不重启IDE的情况下加载和卸载主题和插件。

说明:此特性并不是所有的插件都支持(不需要重启),在未来的版本中把这种方法扩展到大多数插件中,使插件管理尽可能的简单
但主题方面:你可以所见即所得了

更明显的滚动条显示

你是否吐槽过IDEA的滚动条颜色也太浅了,滚动条看不不太清楚,着实影响了使用。如果你和我一样有过这种困惑,那这个版本就可以拯救你了。你只需要这么设置(默认是不开启的哦)即可:Settings/Preferences | Appearance & Behavior | Appearance,然后勾选上"Use contrast scrollbars"即可,前后的对比图如下:

更平滑的鼠标滚动体验

这个改进看起来很小,但实际非常有价值:它能让你滚动鼠标更加的平滑,可能比德芙还丝滑~

自动配置Maven项目

在之前版本,很多时候我们首次导入一个Maven项目进来的时候,需要手动配置一些东西(比如模块、子模块、maven设置等)。这个版本很暖心:让这一切变为了自动挡

更好的意图猜测上下文

我觉得IDEA相比eclipse最亮眼的一点便是它的上下文机制:这让你觉得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




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

为了更好的让大家了解到IDEA的新特性,提高你的工作效率,此处我附赠上前两个版本的主要新特性,供你参考学习。

总结

工欲善其事必先利其器,提供工作效率的一个重要手段之一:强大的工具。19年来(2000-2019)JetBrains公司提供的JetBrains 全家桶给我们带来一个又一个的惊喜。
从某种程度上讲,正是因为有了像IDEA、PyCharm...这种非常优秀的IDE,才得以让我们在工作、学习过程中连续获得便利性很好的体验,所以它的出现一定程度上是促进了整个社会的发展的,感谢捷克的这家公司为人类做出的贡献。

向那些孜孜不倦为IT行业提供优秀工具的人们致敬 !

---------------------
作者:_YourBatman
来源:CSDN
原文:https://blog.csdn.net/f641385712/article/details/103309292#comments
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件

[转]IntelliJ IDEA 2019.3正式发布,给我们带来哪些新特性?相关推荐

  1. IntelliJ IDEA 2019.1 正式发布;互联网公司外卖报告

    (给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.IntelliJ IDEA 2019.1 正式发布,"JetBra ...

  2. 如约而至,Java 10 正式发布:包含 109 项新特性

    如约而至,Java 10 正式发布:包含 109 项新特性 期待已久,没有跳票的 Java 10 已正式发布!你可以通过这里下载 Java 10 正式版. 此前我们曾报道过,为了更快地迭代,以及跟进社 ...

  3. IntelliJ IDEA 2019.3 正式发布,给我们带来哪些新特性?| CSDN 博文精选

    作者 | _YourBatman 责编 | 屠敏 出品 | CSDN 博客 前言 千呼万唤始出来.自从JetBrains在今年7月24日发布了IDEA 2019.2版本后,从9月份开始我便一直在关注此 ...

  4. IntelliJ IDEA 2018.3 安装、永久破解及新特性说明

    文章目录 一.下载 二.安装 三.破解 四.新特性说明 五.实用技巧 一.下载 前往 IntelliJ IDEA官网 下载Ultimate版本(IntelliJ IDEA官网会默认选择适合当前操作系统 ...

  5. Kafka 2.8.0 正式发布,增加了哪些新特性?

    导读:目前 Kafka 已经定位为一个分布式流式处理平台,它以高吞吐.可持久化.可水平扩展.支持流数据处理等多种特性而被广泛使用.目前越来越多的开源分布式处理系统如 Cloudera.Storm.Sp ...

  6. IntelliJ IDEA 2020.3正式发布,年度最后一个版本很讲武德

    点击上方"BAT的乌托邦",选择"设为星标" 后台回复"专栏",开启专栏模式学习 ✍前言 你好,我是YourBatman. 2020庚子年是 ...

  7. IntelliJ IDEA 2020.3正式发布,真香

    idea2020.2中系统bug, 在创建 SpringBoot项目时会卡死在Reading Maven projects- ,换了旧版本就可以解决,但还是新版香 目录 ✍前言 ✍正文 what's ...

  8. [转]IntelliJ IDEA 2020.1 正式发布,15 项重大特性、官方支持中文了!

    头图&作者 | YourBatman,CSDN博客专家 责编 | 唐小引 出品 | CSDN(ID:CSDNnews) 前言 千呼万唤始出来!自从官方在 2020-01-20 发布了其 202 ...

  9. IntelliJ IDEA 2020.1 正式发布,15 项重大特性、官方支持中文了! | 原力计划

    头图&作者 | YourBatman,CSDN博客专家 责编 | 唐小引 出品 | CSDN(ID:CSDNnews) 前言 千呼万唤始出来!自从官方在 2020-01-20 发布了其 202 ...

最新文章

  1. javascript 匿名函数的理解
  2. 无线网***工具进攻方法及防范技巧
  3. Oracle 9i 升级至Oracle10g数据库最好的方法
  4. python变量无需指定类型对吗_Python变量类型 - osc_3rgq3dae的个人空间 - OSCHINA - 中文开源技术交流社区...
  5. ExtJs异步ajax调用和同步ajax调用公用方法
  6. 火了!16岁高中生做的 Python 3.9 八大新特性图
  7. redhat linux修改乱码
  8. 2015 CALLED THE INTERFACE OF 2014
  9. struts2学习笔记之十一:struts2的类型转换器
  10. 微擎结合thinkphp5要带上uniacid_传统企业要做网络营销推广找哪家好?
  11. HDFS 上传文件的不平衡,Balancer问题是过慢
  12. 如果REST应用程序应该是无状态的,那么如何管理会话?
  13. Java方法的局限,Java接口有的局限性,它良好而解决了这个问题
  14. 电子电路学习笔记(2)——电容
  15. 小故事折射出大道理:风靡办公室的管理寓言
  16. vue实现tagsview多页签导航功能
  17. VUE组件日时分秒倒计时
  18. 解决nuxt项目转为spa打包部署报错问题
  19. 有网络时yum无法安装,报错:Loading mirror speeds from cached hostfile
  20. 超高清晰电影寻觅及下载技巧汇集

热门文章

  1. Oracle应用集群详解
  2. 充分利用系统的组策略 保障共享目录安全
  3. 入门基础-VC网络编程入门
  4. 基于C#的计时管理器
  5. ABP Framework 为什么好上手,不好深入?探讨最佳学习姿势!
  6. .NET上海社区线下Meetup - 5.22 Blazor Day
  7. 开源推荐:Asp.Net Core入门学习手册!
  8. 从零开始实现 ASP.NET Core MVC 的插件式开发(九) - 如何启用预编译视图
  9. 快醒醒,C# 9 中又来了一堆关键词 init,record,with
  10. 《三体》中的“维度”