IntelliJ IDEA 2022.3正式发布,配置云同步&支持Redis好用到炸

数据库 Redis
IntelliJ IDEA 2022.3中最直观的感受是:可以通过设置来切换到新UI,目前这套UI还是preview预览版本,但依旧能给你焕然一新的感觉:不是微整,是换脸。

正文

今年10月份,JetBrains宣布了其打造的下一代IDE —— Fleet,的公开预览版本供以免费下载免费使用,笔者也在第一时间体验了一把,总结其特点为:

  • 从头构建
  • 使用IntelliJ代码处理引擎

主流开发语言,一个IDE就够了

  • 分布式IDE架

使用虚拟文件系统,走到哪编到哪

  • 完全重新设计的UI

Fleet定位不会取代其它IDE,这里提到它,是因为在这个版本的IDEA升级中能看到它的身影(同样在PyCharm 2022.3等其它IDE上亦是如此)。

想体验一把Fleet的现在仍可免费下载和使用:https://www.jetbrains.com/fleet

what’s new(新特性)

IntelliJ IDEA 2022.3中最直观的感受是:可以通过设置来切换到新UI,目前这套UI还是preview预览版本,但依旧能给你焕然一新的感觉:不是微整,是换脸。

有个笔者非常非常喜欢的升级点是:内置支持了Settings Sync(设置同步)的解决方案,再也不用依赖外部存储了,美滋滋。还有个亮点升级为:备受期待的Redis支持终于来了,现在DB&Redis全拿下。

下面简单介绍下重点升级的功能部分。

全新UI

话不多说,笔者直接用两套UI的截图给你对比感受(均为IntelliJ IDEA 2022.3版本哦)。

“老”UI:

图片

“新”UI:

图片

新的UI官方吹捧它:外观干净、现代且功能强大,使用下来整体给我的印象其实就两字:简洁和聚焦。将更多的显示区域留给编辑区,收起更多功能按钮,使用快捷键操作来整体进而提升工作效率,这或许是设计哲学。

如何切换到新UI?在设置里呢:

图片

这套UI还是beta阶段,但作为本次升级的第一亮点提出,重要性可想而知。因此:不管你习不习惯,看着爽不爽,如果你已经升级到IntelliJ IDEA 2022.3版本了的话,笔者推荐你保持使用新UI,毕竟到了2023年的版本,这套UI铁定转正,这是不可逆的趋势。

PS:这套UI笔者觉得还存在些不便的地方和一些小问题,正式版估计能够解决,拭目以待吧

Settings Sync(设置同步)解决方案

这个太赞了。IntelliJ IDEA的设置项多入牛毛,每个人都会对其设置进行或多或少的调整,那么云存储这些设置项就成了刚需,否则不仅无法共享配置(比如家里一个IDE,公司一个IDE),而更坏的情况是当遇到IntelliJ IDEA奔溃无奈需要重新全新的安装一次时(或者你新买了一台电脑时?),设置来设置去半天的工期就没了。

从上面的截图可以看出,笔者对IDEA的私有化配置还是比较多的(比如个性化UI、主题、插件等)。之前版本里为了漫游这些配置项,需要借助“外力”:比如笔者将其存到自己的gitee仓库里

图片

图片

关于配置云同步功能,早在2020年IDEA加入Space协作空间时,笔者就在念叨配置云同步啥时能有。这不终于等到了:JetBrain内置支持啦,喜大普奔。

图片

支持连接到Redis

在Database里创建链接时,可看到新增了Redis的支持:

图片

连接到Redis后的视窗如下:

图片

体验几天下来,笔者的整体感觉还是非常不错的,毕竟JetBrain做功能软件从来没有让人失望过,值得信赖。

编码相关升级

除了以上3大亮点外,其它方面的升级也就可圈可点了,针对编码相关的升级点再做简要介绍哈。

更好的Spring Bean自动装配

代码写着写着发现需要引入一个Bean来使用,完成xxx功能。之前的做法必须得分两步:

去声明:一般为跑到类顶部去@Autowired注入进来

回去使用:回到编码处继续

现在“不需要”这么麻烦了,可以一步到位。比如下面示例:笔者需要使用这个Bean来完成功能,写到这就可以借助IDEA帮助我们来完成喽,一步到位:

图片

选择autowire选项:

图片

选择demoService后的效果如下:

图片

不会改变光标位置:可无间断的继续编码,提升编码体验。

值得注意的是:上图展示的为IDEA通过构造器方式帮你把Bean注入进来了,而实际使用时我们大多数时候还是使用@Autowired​属性方式注入(虽然Spring早已不推荐这么做了,但这样代码看起来确实清爽好多),所以IDEA能想你所想:

图片

可以看到,若IDEA发现你当前就是使用的​@Autowired属性方式注入的,那么它也会这么做,智能得一批。

Reader模式下库代码可被格式化啦

IDEA在阅读库代码(jar包里面的代码)时有个实用的功能:阅读模式(Reader Mode),如下图所示:

图片

我们知道jar包里面的代码是只读的,不能被修改的。也就是说它的代码格式也是固定的。虽然这一点不能改变,但IDEA这次在阅读器上做了“加强”:可以自定义阅读偏好。说白了:就是可以自定义规则了。

诚然,阅读一篇具有良好格式的文章是对效率有帮助,这在阅读代码时也是一样一样的:格式化过的代码(特别是按照自己偏好格式化过的代码)非常有助于阅读和理解。这就是IDEA提供此功能的意义所在:

图片

举个例子:比如库里的源代码是这样的:

图片

切换为阅读模式后,就变下图这样了:源代码被格式化为了我希望的格式,大大方便了阅读有木有。

图片

这个小功能笔者认为非常实用,基本解决了你在看同事提供的jar包内代码时,觉得对方排版很乱而心生意见的问题。

更好的Java检查和改进

现在,对于有些“坏味道”的代码,编译器能直接给与你提示并且给出建议的解决方案。如:

并行流方法重复使用了:

图片

无谓的数组长度判断代码:下面这个case见过太多程序员这样做无用功了,除了增加“垃圾代码”外,也能体现出基础知识的不扎实呀。现在有IDEA帮你了,以后避免喽。

图片

解绑对Maven 2的支持

Apache Maven 2早在2009年就已EOL,这个版本IDEA终于将其全部拿下不再内建支持。

但考虑到有些上古项目还在使用Maven 2构建,因此IDEA将其独立成了一个插件,根据需要选择性安装即可。

图片

远程开发

Remote Development是IntelliJ IDEA在2020年新增的一项功能,目前依旧为beta版本:

图片

此功能持续改进中,本次优化的有:

  • Code With Me会话访客无法执行的操作已被明确标记
  • 对Linux ARM64作为远程开发后端的测试版支持(之前不支持Linux ARM64作为远程开发的Server,只支持Linux X86)
  • 重做了最近的 SSH 项目的概览

有兴趣的可以试试改功能,增加对未来趋势的把握。但是此功能,根据笔者之前体验过的经验,仍不建议作为主力开发手段。按照JetBrain的计划,2023年这项功能会转正,到时再会。

其它升级

  • 改进的Search Everywhere用户体验
  • 改进的复制剪切粘贴行为
  • 支持Java 19
  • 支持Kotlin 1.7.20
  • 支持Jakarta EE 10
  • 改进对Kotlin的支持性能,据说性能提高5倍左右
  • 改进对Scala 3的支持,提高智能性、性能等
  • 改进对Micronaut框架的支持
  • 改进HTTP 客户端

总结

每种技术是有红利期的,这一般体版本升级上。工具类软件一般建议可保持最新,代码类框架一般坐在第二排、第三排看戏即可。

作为程序员,或许注定了必须保持跟踪新事物、新技术、新版本的心态,但永远保持新鲜,能持续多久呢?

责任编辑:武晓燕 来源: YourBatman
相关推荐

2011-05-18 09:29:30

IntelliJ

2023-04-03 08:33:27

2023-10-24 08:31:24

UIProfiler性能

2012-05-18 15:37:01

JavaIntelliJ

2012-03-30 14:56:03

JavaIntelliJ

2012-05-16 15:25:02

2009-12-09 14:31:59

IntelliJ

2013-04-16 09:56:33

GlusterFSOpenStack

2017-09-22 18:50:50

模块化Java 9发布

2023-10-10 14:54:31

插件开发

2010-07-26 10:39:28

IntelliJ IDIntelliJ IDIntelliJ ID

2023-05-18 09:00:39

Nuxt类型Nuxt 2

2013-05-23 10:26:27

Chrome for google

2012-05-09 10:16:10

SAPActiveEmbed

2012-01-04 09:13:29

Java

2021-11-01 12:11:02

GitHub AI IT资讯业界

2014-12-17 09:26:26

GoAndroid

2017-12-06 15:27:21

IntelliJ插件Grep Consol

2012-06-19 11:18:00

LinuxSkype微软

2013-02-22 17:15:21

Chrome 25浏览器
点赞
收藏

51CTO技术栈公众号