JetBrains已为IntelliJ IDEA及其基于IntelliJ的IDE制定了2020年路线图。 承诺的新功能范围从其他机器学习驱动的代码完成到协作编辑。
该公司表示,额外的基于机器学习的代码完成功能将更好地利用上下文对完成建议进行排名,并生成超出单个标识符的完成变量,以提供全行完成。 全线完成被认为是投资的主要领域,可能需要一段时间才能出现在产品中。
[ 也在InfoWorld上:Java 14中的新功能 ]
JetBrains已经在探索将机器学习用于代码完成的用途,并且该研究的一些结果已进入产品。 IntelliJ现在使用机器学习来提高完成变体的排名,并且语言插件使用不同的属性标记每个产生的完成变体。 IntelliJ还使用机器学习来确定哪些属性有助于项目排名,因此最相关的项目位于列表的顶部。
除了基于机器学习的代码完成功能外,JetBrains还列举了2020年对IntellIj的许多改进,并可能会有所变化。 这些包括:
- 协作编辑支持。 用户可以将其IDE作为“瘦客户机”连接到主系统,这不需要直接的源代码访问。 每个用户将拥有自己的状态,以及一组打开的文件,插入符号位置,完成变体列表和其他功能。
- 将IDE用作轻量级文本编辑器。 还正在开发一种用于编辑非项目文件的专用模式。
- 与Git集成的两种模式。 开发人员将能够在支持暂存区域但不支持变更列表的新UI与基于变更列表的当前UI之间切换。 将两者结合起来似乎并不可行。
- 简化了入门以及环境设置和配置。 该系统将负责安装Git,Java Development Kit等。
- 更深入的云集成。
- 重新设计的项目模型可消除当前的限制,例如缺乏对不同类型项目的任意混合的支持。 好处将包括更快的项目开放以及与Maven和Gradle的顺畅同步。
- 改进了索引性能,并使索引的破坏性降低。 用户还将收到有关索引异常的通知。
- 重新设计了读/写锁线程模型,以解决UI冻结问题。
- 自动检测期间更多可发现的重构。 一个示例是增加了检测方法声明中的更改并相应调整用法的可能性。
- 支持加载和卸载大多数插件而无需重新启动。 目的是拥有一个可以根据每个项目正确调整其大小的IDE。 例如,Spring项目仅会加载使用Spring的插件。
- 附加的Code Vision功能可在代码编辑器中显示丰富的上下文信息。 JetBrain的.NET Rider IDE中已经具有此功能。
- 在亚洲市场上基于IntelliJ的IDE的本地化,最初是简体中文的支持,随后是韩国和日本的支持。