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

 

format,png

头图&作者 | YourBatman,CSDN博客专家

责编 | 唐小引

出品 | CSDN(ID:CSDNnews)

format,png

前言

千呼万唤始出来!自从官方在 2020-01-20 发布了其 2020 年的 Roadmap 后,我便持续关注着、期待着 JetBrains IntelliJ IDEA 在“新 10 年”的首个版本的发布。这不,就在 4 月 9 日,发布了其“新 10 年”的首个版本 —— IntelliJ IDEA 2020.1。

按照国际惯例,作为大版本号的升级,一般都会“搞点事情”,而事实确实如此(包括了支持中文)。

说明:2020 是 JetBrains 公司成立 20 周年,小伙子是 20 岁的大男孩了。

format,png

What’s new(新特性)

IntelliJ IDEA 2020.1 添加了对 Java 14 的支持、为部分 Web 和测试框架添加新功能,通过数据流分析辅助升级了调试器,新增了 LightEdit 模式,以及支持从 IDE 直接下载和配置 JDK 等!

1、支持 Java 14

2020 年 3 月 17 日,Oracle 的 JDK/Java 14 正式 GA(General Available),这是自 Java 采用六个月一次的发布周期后的第五次发布。

“咱们”IDEA 顺序跟上,提供了支持其新特性。除了针对 record 提供完整的代码洞察支持,IDE 还允许用户快速创建新 record,生成其构造函数与组件,以及对既有错误发出警报。另外,IDE 现已支持 instanceof 运算符的模式匹配,其中包括新的检查以及快速修复,后者用简洁明了的新模式变量快速简化了冗长的 instanceof-and-cast 惯用代码。

format,png

format,png

2、从 IDE 直接下载 JDK

当你还在吐槽现在 JDK 下载起来越来越麻烦的时候,IntelliJ IDEA 此举会不会让你感动到哭?

您无需再从网络中搜索不可或缺的 JDK。从 IntelliJ IDEA 2020.1 开始,在创建并配置项目时,您可以直接从 IDE 下载并配置 JDK 构建。如果您打开下载的项目,IDE 将检查计算机是否安装了为此项目配置的 JDK。如果未安装,IDE 将提示您下载 JDK。当然你也可以自己主动下载:

format,png

下载 JDK 的 vendor 源可以有多种可选(木有官方正统的 Oracle 哟~):

format,png

3、更好的 Java 代码检查

在 IntelliJ IDEA 的每个新版本中,都会扩展其静态代码分析功能。此版本也不例外。除了上述改进外,还新增了多项代码检查。它们可以检查 SimpleDateFormat 模式中的大写字母,分析日期格式设置,搜索其他冗余方法调用,以及报告并建议消除字符串文字中多余的转义字符等。

format,png

format,png

4、LightEdit 模式

“轻编辑”模式,用意是用来作为简单的文本编辑器。IntelliJ IDEA 2020.1 增加了期待已久的 LightEdit 模式。如今,用户无需创建或加载整个项目,即可在类似文本的编辑器中快速修改独立文件。您可以从命令行,IDE 的欢迎屏幕或操作系统文件管理器中,在此新的轻量级编辑器中打开文件。此外,使用“Open File in Project” (Alt+Enter) 意图,可以从 LightEdit 模式切换至完整项目模式。

想法是好的,但我感觉有点鸡肋:还要通过命令行模式打开,并且有编辑功能的阉割~

5、Javadoc 渲染

这个小功能本人非常的喜欢,照顾到了爱好读源码一族。在编辑器中阅读 Javadoc 可能令人不胜其烦。此类文本中充斥着各种标记,在需要与参考链接和图像进行交互时,更是雪上加霜。正因如此,IDEA 在编辑器中增加了一种渲染 Javadoc 的方法。通过 Help | Find actions | Render documentation comments on file opening 可以启用此功能。

format,png

format,png

提个小建议:渲染后就不能鼠标选中 or 复制了,期望可以选中和复制,这样讲课起来做示例会方便很多。

6、改进的导航栏/面包屑栏

这个小功能我也是非常的喜欢,当然我平时使用快捷键会更多,但也还是喜欢此功能。IntelliJ IDEA 2020.1 提供了一种新选项来简化项目导航。新导航栏可以显示 Java 类和接口中的方法,用户无需滚动屏幕,即可直接跳转到需要在文件中查看的行。如果之前很少使用导航栏,那么何不体验一下这项功能。通过 View | Appearance | Navigation Bar 即可将其打开(默认就是打开的)。

7、Zen 模式(禅模式)

很高级有木有,对于快捷键控,平时工作中我个人还挺喜欢使用这种模式编码,投入度高效率就高了。

IntelliJ IDEA 2020.1 在编辑器中引入了新的 Zen 模式。这种模式有助于消除所有干扰项,使您可以专注于源代码。Zen 模式将“免打扰模式”和“全屏模式”完美融合,无需同时开启这两种模式。从主菜单中选择 View | Appearance | Enter Zen Mode,全身心沉浸在代码世界中。

禅模式下的全屏截图如下:

format,png

8、调试器:数据流分析辅助

该功能挺不错的,辅助你调试,提高调试效率。

IntelliJ IDEA 2020.1 为 JVM 调试器新增了数据流分析功能。在代码实际执行前,这项功能可对执行情况进行预测。当应用程序在断点处停止时,IDE 将根据程序的当前状态执行数据流分析,检查/预测接下来的运行结果。要在调试器中使用 DFA,请在 Settings/Preferences | Build, Execution, Deployment | Debugger | Data Views | Java 下启用该功能(默认是启用的)。

format,png

9、调试器:属性置顶

又是一个非常非常实用的小功能。简单的说,你在调试的时候呢,有些对象的字段太多了,要去找他有时候还要翻页或者下拉很多,一般 IDEA 调试可能要走好多遍代码,你现在在第一次调试后,吧这个调试的字段置顶,以免老是要去找。

format,png

10、初步支持 HProf 快照分析

.hprof 文件一般指的是内存快照文件,用于做 JVM 内存溢出分析。之前 IDEA 一般借助 jvisualvm.exe 这个好用的工具来打开/分析此文件,现在 IDEA 内置就支持啦。

IntelliJ IDEA 2020.1 可以打开 .hprof 内存转储文件,这种文件有助于识别内存泄漏,并找到优化内存使用率的方法。例如,您可以查看总体大小、实例数量以及堆栈跟踪等基本文件信息。这些文件还列出了按类分组的所有根对象、按实例数或大小排序的所有类以及带有字段值查看器的所有类实例。

  • 使用 Demo

先使用 jmap -dump:file=test.hprof,format=b 你的 pid 拿到一份 dump 文件:test.hprof。然后使用 IDEA 的此功能把该文件读取进来:

format,png

文件读取进来后,可在其“专属视窗”看到分析结果:

format,png

需要注意的是:这项功能目前处于早期阶段,功能相对捡漏,后续的主要版本中将继续改进,加入新的功能。

11、Git 交互体验优化

此版本在 Git 的交互体验上做了优化,使得使用起来确实更得心应手了。

  • 新 Commit 工具窗口:

format,png

可通过此页面右上角的小齿轮,switch 切换为弹窗模式:

format,png

前者若想生效,你需要配置它成为默认的 commit 窗口模式,如下截图所示:

format,png

对应的,还会衍生出 Git 其它操作中一些新的交互方式,见下图们:

format,png

format,png

这个小功能非常赞:可以搜索分支以及刷新啦。

format,png

12、改进的 HttpClient 工具

IntelliJ IDEA 2020.1 中的 HTTP 客户端更加智能。现在,它可以正确地自动补全路径变量和 URL 路径,引导用户直接从 HTTP 请求文件访问相关端点。IDEA 还为 Spring 用户提供了一项更新:Spring MVC 处理程序方法现在获得了指示 URL 映射的间距图标。使用它可以创建或打开现有的 HTTP 请求文件并导航到 HTTP 客户端。

format,png

format,png

format,png

13、统一的浅色主题

IntelliJ IDEA 2020.1 将新的浅色主题作为其在所有操作系统中统一使用的默认主题。IntelliJ 推荐你使用!但是像我用习惯了我的“自定义白色系主题”,所以我会切换回来的,看个人习惯喽~

另外它默认使用的 JetBrains Mono 字体,若你不喜欢你也可以改回自己原来的。

此字体据说评价不错,但我习惯了之前的,那就改吧。

14、小彩蛋:支持中文

这算此版本给的一个小彩蛋。需要注意的是:源生是不支持中文的,需要你额外下载 Chinese (Simplified) Language Pack 这个由官方提供的简体中文插件:

format,png

汉化后的效果如下:

format,png

感谢捷克工程师(可能是由国人实现)对我大天朝程序员的“照顾”,且不说这个必要性到底有多大,但从侧面体现了我国 IT 产业在国际上的分量越来越重了,这是一个好的信号,是我们的骄傲。

由于插件还是 EAP 版本,所以有些地方汉化不是非常彻底,不过绝大部分都是很 OK 的。程序员“老鸟”一定会觉得汉化的 IDE 很 low,但很明显这对新手是非常友好的。

15、其它

  • 更好的框架支持

对 Spring WebFlux、Spring、JMS、RxJava、Swagger Codegen...等最主流框架均做了些许更好的支持,你使用过程中自会体会到的。

  • 对 Docker、Kubernetes 更好支持

为了便于您从 Docke 注册表中拉取映像,此版本重新设计了 UI 并移除了弹出对话框。现在,只需点击 Service 工具窗口左侧窗格中的 Images 节点,IntelliJ IDEA 即可在右侧窗格中打开 Images Console 选项卡,您从中可以轻松拉取映像。IDE 还为映像提供了补全功能。

format,png

Kubernetes 方面:通过直接从编辑器间距调用“Apply”命令,您可以更新 Kubernetes 集群,从而匹配在本地文件中定义的状态,使用中自行体会哈。

  • Maven/Gradle 自动导入更加智能

使用中会体会到。

  • 支持 Scala 3

说明:初步支持,随着 Scala 3 的发展也会逐渐提供更多支持。

  • 拆分 Terminal 终端会话

这个小功能也非常好用。此版本新增了垂直或水平拆分终端会话的功能,便于用户并行运行多个会话。您可以从终端调用上下文菜单来创建、导航和关闭拆分的终端会话。

format,png

  • 运行配置可存储到文件

这个小功能非常不错,特别适合团队协作。从 v2020.1 开始,运行配置可以灵活存储于项目文件夹中。为此,请打开 Run/Debug Configurations 对话框,选中右上方的 Store as project file,然后点击齿轮图标。之后将打开一个弹出窗口,您可以在其中选择运行配置的存储位置。

format,png

  • 彻底过度到 JBR11 版本

从此版本开始,JetBrains Runtime 8 (JBR8) 已成历史,已彻底过渡到 JetBrains Runtime 11 (JBR11)。

format,png

总结

作为 2020 年的第一个版本,有点“跨时代”的意思,带来的新特性们还是可圈可点的。

升级建议:如果你不是“正经付费党”,再次提示你:升级需谨慎哦(当然喽,若纯从使用角度来说,我本人是强烈建议你使用它的)。

最后,依旧要向那些孜孜不倦为 IT 行业提供优秀工具的人们致敬!!!特别是捷克的那些创造者们,你们创造了非常好的工具提高了生产力,推动了社会某些产业的进步,功勋卓越!!!

版权声明:本文为 CSDN 博主「YourBatman」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/f641385712/article/details/105435920


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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/284947.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ArcGIS遇上Python】ArcGIS批量为多个矢量图层添加一个或多个字段(Add Field)案例实现

多个人在利用ArcGIS做数字化之后,需要批量为多个图层添加一个或者多个相同的字段,挨个手动添加字段显然不可取。ArcGIS Python提供了快速高效的批量添加字段的解决方案。本文以土地利用数据(Landuse1和Landuse2)为例,采用简单的Python代码实现了文中两个矢量图层批量添加字…

可下载!Vue3+.NET6实战系列:通用管理后台

.NET Framework停更3年,4月份还又停止了3个版本支持,居然还有人没怎么接触.NET跨平台!真的该好好学下.NET6了,已经是不得不学了!好好看下这套《Vue3.NET6前后端分离电商实战》免费教程,完整的源码视频课件全…

C语言试题192之实现strchr函数功能

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款刷算法、笔试、面经、拿大公司offer神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目: 实现st…

WGS84(GPS)、火星坐标系(GCJ02)、百度地图(BD09)坐标系转换案例教程(附转换工具下载)

在做基于百度地图、高德地图等电子地图做为地图服务的二次开发时,通常需要将具有WGS84等坐标的矢量数据(如行政区划、地名、河流、道路等GIS地理空间数据)添加到地图上面,然而,在线地图大多使用的是火星坐标系,需要事先将矢量数据转为火星坐标系。本文以案例的形式,讲述…

.NET 6 AssemblyLoadContext DLL 库 热插拔逻辑实现

曾经也实现过.Net Framework 基于AppDomain 的 dll库热插拔,经历了版本的迭代,.Net Core 不支持 AppDomain,之前也搞过.Net Core 3.1 版本的,现在搞一下子.NET 6.0的。热插拔运用的场景主要运用到宿主与插件这个场景或者动态任务的…

C语言试题193之实现strcmp函数功能

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款刷算法、笔试、面经、拿大公司offer神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目: 实现st…

[转]Webpack5(从入门到精通)

这里写目录标题 1、webpack 初体验 全局安装webpack2.打包样式资源 创建webpack.config.js文件(配置文件)3.打包html资源 webpack.config.js文件(配置文件)4.打包图片资源 webpack.config.js文件(配置文件)…

mybatis由浅入深day01_5mybatis开发dao的方法(5.1SqlSession使用范围_5.2原始dao开发方法)...

5 mybatis开发dao的方法 5.1 SqlSession使用范围 5.1.1 SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory 将SqlSessionFactoryBuilder当成一个工具类使用即可,不需要使用单例管理SqlSessionFactoryBuilder。 在需要创建SqlSes…

做⼀个⾼德地图的 iOS / Android MAUI 控件(上)

点击上方蓝字关注我们(本文阅读时间:10分钟)Microsoft Build 2022 ⼤会上正式发布了 .NET MAUI , 对于 .NET 开发者可以⽤ C# 完成跨平台的前端应⽤开发。对⽐起 MAUI 的前身 Xamarin , MAUI 除了可以⽤传统的原⽣开发模式外,还⽀持了 Blazor…

易康eCognition Developer 9.01安装教程(附eCognition下载地址及中文教程)

eCognition是由德国Definiens Imaging公司2009年推出的智能化影像分析软件,2010年被美国Trimble公司收购。eCognition是目前所有商用遥感软件中第一个基于目标信息的遥感信息提取软件,它采用决策专家系统支持的模糊分类算法,突破了传统商业遥感软件单纯基于光谱信息进行影像…

C语言试题194之实现strcpy函数功能

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款刷算法、笔试、面经、拿大公司offer神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目: 实现st…

[中文版] 可视化 CSS References 文档

本文分享了我将可视化 CSS References 文档翻译成中文版的介绍,翻译工作还在陆续进行中,供学习 CSS 参考。 1. 可视化 CSS References 文档介绍 许多 CSS 的文档都是属性的介绍,而开源项目 css-reference 并没有提供中文版,而当我…

对比 C# 聊聊 C++ 中几类特殊成员函数

一:背景 在 C# 中要说类默认给我们定义的特殊成员函数,莫过于 构造函数,但在 C 中这样的特殊函数高达 6 种,有必要整合一下聊一聊。二:特殊成员函数 1. 默认构造函数和 C# 一样,很多书中都说,如…

Js 枚举定义Layer Icon

layer的icon有7种样式:1-7 [图片来自:https://blog.csdn.net/beauxie/article/details/60959971] 有时候常常记不住 😣,不防自己定义一哈: var layerIcon {//无none: -1,//成功success: 1,//失败error: 2,//提问、疑…

前端进阶之路: 前端架构设计(2)-流程核心

可能很多人和我一样, 首次听到"前端架构"这个词, 第一反应是: "前端还有架构这一说呢?" 在后端开发领域, 系统规划和可扩展性非常关键, 因此架构师备受重视, 早在开发工作启动之前, 他们就被邀请加入到项目中, 而且他们会跟客户讨论即将建成的平台的架构要…

C语言试题195之实现strnchr函数功能

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目: 实现strnchr函数功能 函数名称:在字符串中查找字符 函数原型:char *strnchr(cons…

8.2设备文件及磁盘分区

2019独角兽企业重金招聘Python工程师标准>>> 概览: 设备文件的创建 权限 设备名 类型 主设备号 次设备号 mknod [-m MODE] NAME type [MAJOR MINOR] 创建时,先查看是否存在设备号的冲突 零磁道零扇区是MBR:Maste…

【ArcGIS风暴】ArcGIS求一个矢量图层中多个图斑的“四至点”坐标案例教程

如图所示,为ArcGIS软件自带的全球矢量数据,怎样求取每个大洲(图斑)的四至坐标(xmin、ymin、xmax、ymax)呢? 参考阅读:【ArcGIS遇上Python】python批量获取栅格数据四至(top,bottom,left,right)坐标代码 文章目录 1. 矢量数据加载2. 四至计算结果3. 四至计算过程1.…

一个关于导出excel模板的实例

1 首先jsp页面 点击模板下载&#xff0c;会自动下载模板&#xff45;&#xff58;&#xff43;&#xff45;&#xff4c;&#xff0c;效果如下 让我们看源码&#xff1a; &#xff11; &#xff4a;&#xff53;&#xff50;页面 <div class"tab-pane" id"p…

腾讯视频VIP会员,周卡特价9.5元!

今天给大家推荐特价充值腾讯视频VIP会员的平台——幻海优品&#xff0c;腾讯视频在线直充&#xff0c;VIP会员实时生效&#xff01;腾讯视频VIP会员特价充值周卡&#xff1a;原价12元&#xff0c;特价9.5元月卡&#xff1a;原价30元&#xff0c;特价22元季卡&#xff1a;原价68…