¡CLion Nova ha hecho una fuerte entrada en el campo del desarrollo de C y C++, utilizando el motor de lenguaje ReSharper C++/Rider C++!

Resumen

Recientemente, anunciamos una versión preliminar gratuita de CLion que utiliza el motor de lenguaje ReSharper C++/Rider C++ en lugar del motor "heredado" de CLion . Las versiones preliminares están disponibles a través de nuestro exclusivo feed de la aplicación Toolbox . En 2024, según los comentarios, CLion Nova se fusionará con CLion. Hasta entonces, la versión preliminar está disponible de forma gratuita y se puede instalar en paralelo con el CLion (Classic) habitual.



periodo prehistórico

El primer motor C++ de JetBrains está diseñado para AppCode, nuestro IDE para desarrolladores de iOS y macOS. Es parte de la plataforma IntelliJ y fue escrito originalmente en Java y posteriormente también en Kotlin. El enfoque y la arquitectura del motor funcionan bien para muchos lenguajes en IDE basados ​​en IntelliJ; sin embargo, este diseño no es particularmente adecuado para el lenguaje C++.

Para seguir el ritmo del desarrollo de C++ más rápidamente y separar el motor y los procesos IDE, posteriormente se añadió a CLion un motor basado en clangd. Este motor, basado en nuestra bifurcación personalizada de clangd, puede detectar y mostrar advertencias y errores en el editor, sugerir soluciones rápidas y realizar operaciones de resaltado, finalización y navegación específicas. También se utiliza para análisis de flujo de datos e inspección MISRA, etc. Mientras tanto, el motor "heredado" de CLion es responsable de otras capacidades de conocimiento del código, como la refactorización. Nuestra documentación CLion proporciona una "Lista de responsabilidades" detallada.

clangd tiene muchas ventajas, pero para la refactorización y manipulación a nivel de proyecto, no es muy útil. Creamos un prototipo de un indexador basado en clangd e incluso implementamos una función experimental de búsqueda de usos que puede habilitar y evaluar en CLion .

Otra alternativa desarrollada por JetBrains para C++ es ReSharper C++ y el motor de lenguaje utilizado en Rider (para el desarrollo de juegos en C++). También existe un protocolo de comunicación que permite que los IDE basados ​​en IntelliJ, como Rider, se comuniquen con un proceso de backend independiente que actúa como motor de lenguaje. ¡Ahora también hemos adaptado este protocolo y el motor original a CLion!


Objetivo

En esta nueva solución experimental, nos centramos en la capacidad de respuesta, la precisión y el rendimiento del IDE. Tenemos dos objetivos principales:

  • Soluciona problemas de rendimiento y calidad de larga data en CLion causados ​​por el uso de un motor "antiguo" .

  • Unifique la experiencia del usuario en todas nuestras herramientas C++, incluidas CLion, Rider y ReSharper C++.

Hemos denominado la nueva versión preliminar experimental CLion Nova y la versión actual de CLion como CLion Classic . En el futuro, planeamos fusionar CLion Nova con CLion Classic. No se prevén nuevos productos.


Ventajas y mejoras

CLion Nova todavía utiliza dos motores de lenguaje C++: uno está basado en clangd y el otro es el motor utilizado por ReSharper C++/Rider. La mayoría de las funciones de CLion Classic deberían ser idénticas en CLion Nova.

Importantes ventajas de rendimiento de CLion Nova:

  • Velocidad de resaltado más rápida, especialmente para actualizaciones de código incrementales

  • Interfaz de usuario más responsiva

  • Usos de búsqueda más rápida

  • Reducción significativa de congelaciones y bloqueos en la refactorización

  • Indexación de pruebas más rápida

Esta unificación también aporta nuevas capacidades a CLion Nova que no están presentes en el conjunto de funciones de CLion Classic:

incluir clasificación



Diferencias significativas

A diferencia de CLion Classic, CLion Nova no utiliza clangd para implementar funciones principales del IDE, como completar o resaltar código. Sin embargo, la bifurcación clangd de JetBrains todavía se ejecuta con el nuevo motor para diversas tareas (ClangFormat, Clang-Tidy, comprobaciones MISRA, análisis de flujo de datos, etc.).

Nuevas experiencias que obtendrán los usuarios de CLion Classic cuando comiencen a utilizar CLion Nova:

  • Algunos cambios en la forma en que el IDE reacciona cuando el usuario ingresa datos.

  • Algunos elementos y configuraciones de la interfaz de usuario relacionados con Code Insights pueden verse diferentes o estar en ubicaciones inusuales.

  • Algunas configuraciones relacionadas con el código pueden tener valores predeterminados diferentes en CLion Nova. Cuando se lance por primera vez, CLion Nova migrará algunas configuraciones específicas del proyecto y de la aplicación desde CLion Classic, pero no todas.

  • Cambiar entre diferentes configuraciones de idioma (por ejemplo, Depurar/Liberar) puede requerir más tiempo para que el motor Code Insight se ponga al día. Tampoco hay ninguna opción para cambiar el contexto de análisis por archivo.

  • ReSharper C++ sólo está disponible en Windows, mientras que Rider es multiplataforma. Sin embargo, es posible que el motor ReSharper C++/Rider no admita entornos que no sean Windows con tanta fluidez como lo hace con Windows. Si esto le sucede a usted, infórmenos.

Escriba la configuración del mensaje de conversión

Lista de funciones que faltan actualmente:

  • Cadena de herramientas : En CLion existen varias opciones para configurar el trabajo remoto . CLion Nova admite el trabajo remoto utilizando fuentes locales, pero el trabajo remoto utilizando clientes ligeros (Gateway) aún no está disponible.

  • 语言:Objective-C 语言、CUDA(RSCPP-613CPP-26144)和某些针对特定供应商的编译器扩展程序还不受支持。

  • Simplify statement(简化语句)等意图和快速修复目前还不受支持 (CPP-35879)。

  • 一些不太热门的重构也未加入。我们计划以后重新引入 Move(移动)(CPP-35867) 和 Inline Parameter(内联形参)重构 (CPP-35868)。

  • JetBrains 的 AI Assistant 尚不适用于 CLion Nova。



如何安装 CLion Nova

CLion Nova 是免费的早期预览版,只能通过 Toolbox App 获取:

CLion Nova 是抢先体验预览版,因此需要登录,但您可以免费使用,直到 CLion Nova 合并到 CLion 中。我们将定期通过 Toolbox App 发布 CLion Nova 更新。

与 CLion Classic 相比,CLion Nova 具有响应更快的 UI、更好的整体 IDE 性能和更高的功能质量,特别是 C++ 代码重构。立即试用,并告诉我们您的想法!


分享您的反馈

CLion Nova 标志着一个巨大变化,需要在多种环境中接受细致的测试。因此,我们需要您的帮助!鉴于您有多种环境和用例,我们希望您测试 CLion Nova 并与我们分享您的体验。

我们特别感兴趣的是您对以下问题的想法:

  • 与 CLion Classic 相比,什么在 CLion Nova 中对您的项目效果更好?

  • 什么中断了您的工作流并阻止您在 CLion Nova 中使用 IDE?这些中断是 CLion Nova 特有的,还是 CLion Classic 中也存在?

使用 CLion Nova 一段时间后,我们会请求您提交反馈表。希望您能抽出时间填写并提交反馈表!

当然,我们的问题跟踪器也可以接收反馈,只是请注明您的问题与 CLion Nova 而不是 CLion Classic 有关。

通过 Toolbox App 获取

您的 CLion 团队
JetBrains
The Drive to Develop

本博文英文原作者:Anastasia Kazakova


CLion 相关阅读

关于 CLion

CLion 是用于 Windows、Linux 和 macOS 上 C 或 C++开发的智能 IDE。CLion 了解现代 C++ 标准并提供预处理程序支持。它还集成了 GDB/LDB 和一套单元测试框架。 

进一步了解 CLion

⏬ 戳「阅读原文」了解更多

本文分享自微信公众号 - JetBrains(JetBrainsChina)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

阿里云严重故障,全线产品受影响(已恢复) 俄罗斯操作系统 Aurora OS 5.0 全新 UI 亮相 汤不热 (Tumblr) 凉了 多家互联网公司急招鸿蒙程序员 .NET 8 正式 GA,最新 LTS 版本 UNIX 时间即将进入 17 亿纪元(已进入) 小米官宣 Xiaomi Vela 全面开源,底层内核为 NuttX Linux 上的 .NET 8 独立体积减少 50% FFmpeg 6.1 "Heaviside" 发布 微软推出全新“Windows App”
{{o.name}}
{{m.name}}

Supongo que te gusta

Origin my.oschina.net/u/5494143/blog/10143808
Recomendado
Clasificación