BT

你的观点很重要! 快来参与InfoQ调研吧!

JetBrains发布了IntelliJ IDEA 2016.1

| 作者 Abraham Marín Pérez 关注 6 他的粉丝 ,译者 顾俊 关注 0 他的粉丝 发布于 2016年4月18日. 估计阅读时间: 4 分钟 | ArchSummit社交架构图谱:Facebook、Snapchat、Tumblr等背后的核心技术

JetBrains日前发布了IntelliJ IDEA 2016.1,即他们最受欢迎的IDE的最新版本。这个版本应该是考虑了多语言开发者的需求,其在很多语言和技术上做了大量的优化;然而最明显的改动是对准了Java的,特别是在帮助开发者全面使用Java 8特性的方面。

第一个IntelliJ IDEA 2016.1版本明显的改动即它的版本号。JetBrains正在修改他们所有产品版本的结构,他们采用了一种更加有意义的格式而不是用传统的语义化的版本(更加适合定义API的版本)。新的版本格式包含两个组件:发布的年份和这一年中的序号。这样改动的主要目的在于,不去管大版本和小版本的区别,将所有的版本发布看成对上一个版本的平等的增量,这样也可以和其他产品的版本更好的统一,举例来说,IntelliJ IDEA的2016.2版本会包含WebStorm 2016.2版本中的相似功能。

除了版本号,第一件每天使用IntelliJ IDEA 2016.1的Java程序员会经历到的是,他们会碰到更多的警告,这是因为新版本中增加了新的代码检查。举例来说,尽管可选类型的概念在Java 8之前就在Google Guava中存在,但直到它被加入到原生的Java构造之后才变得流行起来。作为一个相对较新的概念,很多的程序员会在一些反模式的写法上碰壁,例如,在不首先检查isPresent()的情况下直接调用get()方法(他们会碰到NoSuchElementException异常),将可选类型用作方法的参数(这里用重载或许更加合适),又或是将可选类型用在数组或者集合中(这里空数组或者集合或许能用更少的模板表达同样的概念),IntelliJ IDEA 现在对这些场景都有检查。

因为Guava的可选类型还在一些代码中被使用,这些检查会对两者都进行校验,确认程序员使用得当。然而,当IntelliJ IDEA 发现了一处Guava可选类型的使用,另外一个检查会出现,表明此处有将代码转换到Java原生版本的机会。如果此模式获得成功,相似的检查会被加入其中,提示用户可以进行相似的转化,例如用Java 8中新的日期和时间库代替流行的JodaTime,就连JodaTime的作者也这么推荐

但是Java并不是此次版本唯一受益的语言。Kotlin 1.0被默认支持,Scala有更好的代码补全功能帮助其更好的命名,Groovy可以在调试的时候设置Watch变量,JavaScript也拥有了对ES6以及TypeScript 1.8的支持。其他的一些技术在 IntelliJ IDEA 2016.1也有了更好的支持,例如对Spring框架和Thymeleaf的代码帮助,Android的溢出活动分析器,还有新的Docker插件。

正如所有新版本的发布时一样,用户提交了一些初步使用的问题,特别是Sping框架相关的。然而,通过JetBrains在他们的博客以及Reddit或者Hacker News这些站点的反应来看,这些问题应该很快或获得解决。

查看英文原文:JetBrains Releases IntelliJ IDEA 2016.1


感谢张龙对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT