zoukankan      html  css  js  c++  java
  • IntelliJ IDEA 2020.3正式发布,年度最后一个版本很讲武德

    仰不愧天,俯不愧人,内不愧心。关注公众号【BAT的乌托邦】,有Spring技术栈、MyBatis、JVM、中间件等小而美的原创专栏供以免费学习。分享、成长,拒绝浅尝辄止。本文已被 https://www.yourbatman.cn 收录。

    ✍前言

    你好,我是YourBatman。

    2020庚子年是载入史册的一年,但对Jetbrain公司来说却是它的20周年。上个较大版本的发布,要追溯到8月份了:

    时隔近4个月,北京时间2020-12-01深夜,IntelliJ IDEA再迎更新,这是2020年的第个里程碑版本。踩着2020年的尾巴,Jetbrain团队完成了他们的“KPI”:交付了第三次里程碑版本。

    最近几个版本的介绍这里可电梯直达:

    ✍正文

    我们知道,Jetbrain公司它简直就是个IDE工厂,产出过各种语言使用IDE,并且每个IDEA都做得都非常优秀,傲视群雄。本次除了发布最受瞩目的IntelliJ IDEA外,其它兄弟也相继'out'了(红红绿绿的简直亮瞎眼):
    Php

    C/C++
    Python
    HTML/CSS/JS
    RubyJava/Scala/Kotlin

    说明:Go语言用的IDE Goland本次发布的是Release Candidate而非正式Release,还得过个几天(不会扣Goland团队年终奖吧)

    这么多兄弟能基于在几乎同一时间发布,有充分的理由相信它们使用的是同一基座,所以做到了一致的体验、一致的稳定、一致的优秀、一致的吃吃吃内存。IntelliJ IDEA作为最为出名的代表作,可以说是我们Java程序员的饭碗呀,接下来就来看看我们的新碗带来了哪些好玩的东西呢。

    what’s new(新特性)

    此版本在调试器中添加了交互式提示和嵌入式监视,改进了对Java 15的支持,并引入了对Git暂存的支持以及其它各种功能。然后呢,有些界面上也焕然一新了,做了重新设计。

    按照惯例,先来张启动图新老对比:


    设计师领盒饭去吧,我觉得这个启动图很难再有进步了。

    1、全新的欢迎屏幕


    老的在这:

    这个不得不夸:进步了,更大气更方便了。此次IntelliJ IDEA欢迎屏幕经过重新设计,初始向导已替换为包含四个标签快速进入:

    • 项目管理项目
    • 自定义设置IDE
    • 插件安装
    • 了解IntelliJ IDEA的访问帮助和学习资源
      • 如果你是IDEA的初级使用者,或者想再学习一次IDEA,从这个页面点进去将会非常适合你

    2、IDE主题已与操作系统设置同步

    IntelliJ IDEA现在可以将其主题与您的OS主题同步。

    勾选后,如果你的操作系统选用暗色主题,IDEA也会自动切换主题,保护双眼。

    注意,有一点官方并未做出说明:此功能windows 7不支持,此功能windows 7不支持,此功能windows 7不支持,亲测截图为证:

    可能你会说:为毛现在还有人用win 7?呃呃呃,我刚从XP升级上来......

    3、一键进入阅读器模式

    这个功能很赞,对阅读源码很有帮助。

    默认情况在Reader模式下打开只读文件(也可以是本项目的只读文件)和来自外部库(Jar内)的文件,注释就像被格式化过一样,方便阅读。如下图表示你当前正在以阅读模式看此文件:

    开启阅读模式的效果:像看web页面

    关闭阅读模式的效果:像看html源代码

    简单的说:阅读器模式就是帮你翻译了一下javadoc,更适合源码阅读。默认情况下是关闭的,建议你全局开启(或者在页面右上角单独点击开启亦可):

    3、LightEdit模式优化

    还记得LightEdit模式吗?它是在2020.1版本(2020-04发布)引进的新功能:

    本次改进:现在要从命令行以LightEdit模式打开文件,只需idea -e xxx命令即可(若-e后不写文件名,那就打开上次刚打开的文件)。

    我个人觉得此功能鸡肋,至少对我来说很鸡肋,只玩过没实际用过,毕竟只打开一个文件的话我用普通编辑器更轻量些不香吗?

    4、改进的拼写检查

    一句话:就是帮你检查你的单词是不是拼写错了,并且给出建议(可自定义字典):

    看起来挺智能,实际然并卵,毕竟咱们方法名起个都费劲,还用应为写注释?拼写检查可作用在doc注释上、字符串上。但不可检查变量名、方法名上~

    对于大多数程序员来说(如果你不做开源项目,个别拼错无所谓),建议关闭拼写检查,毕竟它还是耗性能的,特别是windows用户(手动o(╥﹏╥)o)。

    5、更强的Serch Everywhere

    这个搜索更加强大了:新增了对git的支持,可以根据commit id等git相关元素进行搜索啦。

    老的:

    新的:增加了Git Refs选项(暂忽略Calc)

    现在如果你只知道一个commit id就可以拿去搜啦~

    6、浏览项目新增预览模式

    提效神器,如下图(Project视窗):

    点击(Project视窗)右上角设置图标,把图中红框部门勾选上就开启预览模式浏览项目,就开启了预览模式。

    什么叫预览模式:之前打开文件你需要双击,现在光标定位在哪个文件就显示哪个其对应内容,所以就支持键盘操作啦(上下键、tab键),不用依赖鼠标真的十分方便,提效神器啊。

    7、在IDEA内部直接更新JDK

    在之前版本介绍中知道现在可以在IDEA内部直接下载JDK(非Oracle官方的),这次更狠:可以在IDEA内直接升级JDK了(若有更新的话)。

    我个人觉得此功能鸡肋,毕竟JDK谁会轻易去换呢。毕竟你发任你发,我用Java 8。

    8、拖拽标签页

    有些时候我们希望在处理一个项目时多打开几个选项卡(毕竟我们外接屏幕比较大嘛),有点分屏的意思。以前处理起来比较困难:先选中标签页右键,然后选择合适的split方式。现在很简单啦:可以通过拖放文件选项卡来水平或垂直地分割编辑器

    如果想分屏的文件不在顶部选项卡里,IDEA也为你考虑到了,最近文件里也给你提供了入口:

    8、IDEA设为某些文件默认打开程序

    感觉IDEA的侵占欲越来越强了啊,它不仅仅只想做个开发用的IDE,我们的文本编辑工作它都想接管。这不你可以设置某些类型的文件默认打开程序为IDEA了:

    9、调试器 - 交互式提示

    当你在debug模式下运行时,可以直接点击变量后面的“小按钮”,弹出交互式窗口,从而可直接修改其值(做小家),大大方便了调试:

    老版这里是木有可点按钮的:

    若想要修改变量的值,得到底部的专门的窗口来,并且还得右键,选择set value才能达到目的,路径还是蛮长的:

    10、调试器 - 内联watches

    这也是调试的时候经常用到的一个功能:watch观察一个表达式的值。这在新版本里操作方便到令人发指:

    点击这个按钮后就把i加入观察了,直接在程序里就可以观察到:所见即所得

    若是以前版本的IDEA:

    哎哟麻烦,技术真的具有不可逆性,用过就回不去喽。

    11、Profiler - 更强大的分析器工具窗口

    Profiler功能在2020.1就引入了,当时作为一个试验功能,但是Jetbrain承诺将来的方向会一直迭代它,然后它变得越来越强了。

    上个版本,我们要用它分析一个xxx.hprof需要如下步骤:

    1. 通过jps命令找到java进程id
    2. 通过jmap -dump xxx生成一个hprof文件
    3. 将此快照文件放进IDEA的Profiler里来进行分析

    具体操作示例,参见这篇文章:IntelliJ IDEA 2020.2正式发布,诸多亮点总有几款能助你提效

    如果需要分析的项目就是本地项目,这顿操作还是非常麻烦的。既然是本地项目有木有更便捷的方法呢?IDEA在此版本给出了答案:

    它允许你可以将分析器直接附加正在运行的应用程序上,进而选择要执行的功能:分析快照、监控CPU内存等等。

    12、Profiler - 对.jfr和.hprof轻松访问

    在这之前,我们需要分析一个现成的.hprof文件,只能在Profiler视窗里把它导入进来。现在更加方便了,直接可以通过File - Open 打开此文件,即自动调起Profiler视窗进行分析。

    13、主菜单栏VCS -> Git

    不说了,一切看图说话:

    老版本是这样的:

    这侧面也说明了什么问题呢:Git现在是VCS(version control system)版本控制系统的事实标准,勇敢点说甚至是唯一标准。

    14、基于机器学习的代码完成

    现在啥都跟机器学习扯上关系,IDEA号称这个代码补全建议在新版本里是基于机器学习技术搞的,我竟然信了。

    要查看新的这套推荐系统是如何工作的,这么打开设置即可:

    这样你就可以看到本次推荐的排名情况喽:

    总之IDEA的自动代码完成/补全是一绝,用得越多它就越懂你,好像成为好朋友一样,有温度了。

    15、其它

    对Kotlin、Scala等的(新特性)支持,支持http -> cURL转换,更好的url自动补全,对Spring更好的支持等等。

    当然还少不了对Javascript,以及当先很火的云原生Kubernetes的支持(主要体现在日志、脚本、配置上),这些因为不太普适,因此留给你在使用过程中慢慢发现吧。

    另外,值得关注的是此版本的IDEA已经支持到了Maven 3.7.0,虽然后者还未正式发布,但这是马上的事,所以IDEA就提前先给支持喽。

    升级建议

    升。毕竟我木有“正版”烦恼,O(∩_∩)O哈哈~:

    ✍总结

    作为2020年的封板之作,这个版本我个人觉得还是很讲武德的,符合定位。主要喜欢:

    1. 某些外观UI的重新设计,缓解了审美疲劳
    2. 阅读器模式,很赞
    3. 调试器的增强,是真的爱了,调试效率再进一步

    虽然说坐在第二排看戏是最安全的,但每次我都安奈不住想尝试新功能的心,所以我也邀你一起吧,come on

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


    ✔推荐阅读:
  • 相关阅读:
    Android存储数据方式(转)
    Android实现双进程守护 (转)
    Android DOM、SAX、Pull解析XML(转)
    TCP/IP和Socket的关系(转)
    Socket通信原理和实践
    [转]Android中Intent传递对象的两种方法(Serializable,Parcelable)
    内存堆和栈的区别
    hdu 1754 线段树
    hdu 1166 线段树
    zoj 3686 线段树
  • 原文地址:https://www.cnblogs.com/yourbatman/p/14085174.html
Copyright © 2011-2022 走看看