写点什么

JetBrains 宣布 Project Rider:一款 C#跨平台 IDE

  • 2016-02-01
  • 本文字数:2494 字

    阅读完需:约 8 分钟

NDC London 上,JetBrains 发布了一个新项目——跨平台的 C# IDE,它基于 IntelliJ Platform 并使用 ReSharper 技术进行开发。该项目代号为 Project Rider,这款 IDE 包含了大家早已熟悉的来自于 ReSharper 与基于 IntelliJ 的 IDE 的诸多特性,比如说快速修复、检测、智能导航等。虽然 ReSharper 寄生于 Visual Studio 中,但 Project Rider 却是个功能完善、独立的 IDE。

虽然现在的项目还处于早期阶段,但已经包含了如下特性:

导航——智能导航是 JetBrains IDEs 的一个主要特性,Project Rider 当然也不例外。它提供了标准的 Go To Type、Go To File,并且集成了 IntelliJ Platform 的“Search Everywhere”特性,可以转向符号、类型、文件,甚至还可以在设置与动作中进行搜索。

还可以使用 Navigate To 弹出菜单,在类继承体系中查找父类 / 子类等,也可以查找使用的地方,其结果会显示在标准的 IDE 工具窗口中。

编辑——Project Rider 实现了大量的智能编辑特性,从类型辅助(比如说插入花括号与自动格式化)到 Live Templates(包括 ReSharper 10 的 postfix 模板),还提供了快速信息提示与边栏图标,从而可以做到继承导航与上下文动作等。

检查——ReSharper 所支持的大多数检查都会在编辑器中以错误、警告、建议与提示的形式显示出来。这包括对无法识别的符号的红色代码显示与代码问题的下划线高亮显示等等。

Alt+Enter——如果没有 Alt+Enter 支持,那么 JetBrains IDE 就是不完善的,ReSharper 快速修复的大多数菜单项与上下文动作都是可用的。Project Rider 还支持将多个动作应用到整个文件中,并且可以直接修改菜单中检查的严重级别。

重构——Project Rider 提供了有限的重构功能。大多数重构都需要某种形式的用户界面,不过这些界面目前尚未实现。Project Rider 可以重命名符号,并引入或是内联变量,还可以根据 Alt+Enter 来修改代码。

反编译——如果导航到没有源代码的类型,那么 Project Rider 就会帮你进行反编译,结果与 C#代码很类似。

当然了,作为一个标准 IDE,它还包含了其他很多特性:

  • 多种运行时支持。Project Rider 支持.NET Framework 与 Mono,对 CoreCLR 的支持也在进行当中。它可以加载 MSBuild 与 MSBuild 解决方案,以及 DNX 项目。此外,它还包含了用于创建新项目的模板。在创建空项目时,它真的就是空的!
  • 构建、运行与调试。一个 IDE 最为重要的特性之一就是调试,Project Rider 当然也不例外。它可以构建并运行.NET Framework、Mono 与 DNX 项目,并且可以调试.NET 与 Mono 应用,DNX 调试与 CoreCLR 支持正在进行当中。任何构建错误都会显示在构建工具窗口中,调试工具窗口用于显示调用堆栈、变量及观察窗口。
  • 跨平台。就像可以运行并调试多个运行时一样,Project Rider 本身可以在多个平台上运行。它可以在 Windows 与 Mac OS X 上运行,Linux 上也可以,不过还没有进行测试。

工作方式

Project Rider 是个构建在 IntelliJ Platform 之上的独立 IDE,就像 WebStorm、DataGrip 与 JetBrains 的其他 IDE 一样。不过,区别在于相对于在 IntelliJ Platform(运行在 JVM 上)上重新实现 ReSharper 的特性,Project Rider 与 ReSharper 之间是通过非常快速的自定义二进制协议进行通信的。这样,后端依旧是使用 C#编写,运行在.NET 或是 Mono 之上的 ReSharper,而前端则使用 Kotlin 编写,并且调用 IntelliJ Platform 的 APIs。我们后面会在博客中深度介绍其实现细节。

为何还要创建一款 C# IDE?

主要是为广大开发者提供一种选择。我们坚信可以为那些在不同环境下工作的开发者提供优秀的用户体验。那为什么是现在呢?这是因为我们认为现在正是时候,原因如下:

  • 为了让 ReSharper 能够在不同环境下使用(独立于 Visual Studio),我们已经艰苦工作多年了,dotPeek 就是例证。
  • 现在已经有越来越多的开发者在使用非 Windows 平台,我们希望能给予他们所熟知的与 ReSharper 相同的体验。
  • 最后,微软现在正在将其平台与 C#语言向着开源的方向推进,比如说 CoreCLR。

这对于 ReSharper 意味着什么呢?

ReSharper 依旧是 Visual Studio 的最佳扩展,也是我们的龙头产品之一。Project Rider 使用了 ReSharper 则强化了我们对于 ReSharper 的承诺,因为对 ReSharper 的任何更新都不仅会让 ReSharper 受益,Project Rider 也会从中得到巨大的好处。除此之外,我们希望在 Project Rider 上所做的工作反过来能促进 ReSharper 的不断发展。本质上,Project Rider 只会加大我们在 ReSharper 上所付出的努力。

许可模型是怎样的?

虽然现在谈论具体细节还为时尚早,不过其许可模型将会与 JetBrains Toolbox 中的其他产品保持一致。在制订价格时,我们会考虑到可能会出现的诸多使用场景,比如说有人可能想要使用两个工具等等。我们希望尽快制订出价格信息。

路线图

现在已经在通往 1.0 的路上了。我们对于架构非常有信心,并且坚信已经打下了非常好的根基,从而能够实现出 1.0 版本中计划的那些特性。我们已经实现了不少功能,不过还有很多功能亟待实现。我们计划过一阵儿开放一个私有的 EAP,并且截止到 2 月底。在我们的博客与 Twitter 上会提供注册表单。在这个私有 EAP 之后,我们将会转向公开 EAP。到底什么时候开放公开 EAP 取决于早期测试者所提交的反馈信息。我们的目标是在今年秋季发布正式版本。我们对于 Project Rider 感到非常兴奋,并且希望你能与我们一同分享其中的喜悦之情。如果有任何问题,请随时提出来。不要忘记关注我们的 Twitter 账号 @JetBrainsRider 以了解未来的更新信息!相信 Project Rider 将会给广大 C#开发者带来一缕清风。根据 JetBrains 以往的产品风格与特性,我们有理由相信这款新的 IDE 也一定不会让大家失望。

JetBrains 是一家来自于捷克的软件开发公司,该公司位于捷克的布拉格。JetBrains 以各种优秀的开发工具而闻名,比如说 Intellij IDEA、WebStorm、PyCharm、RubyMine、AppCode、PHPStorm、TeamCity、YouTrack、DataGrip 等等。每一款工具都深受广大开发者所钟爱。JetBrains 所推出的各种工具基本上涵盖了常见的软件开发平台,如 Mac、Windows 及 Linux 等。感兴趣的读者可以到 JetBrains 官网了解各种产品的信息并下载试用。

2016-02-01 02:086979
用户头像

发布了 88 篇内容, 共 263.2 次阅读, 收获喜欢 8 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

架构师六个生存法则之一:如何找到唯一且正确的架构目标?

不在线第一只蜗牛

架构

探秘Appium:Capability 进阶技巧揭秘!

测试人

软件测试

KaiwuDB 解析器之语义解析

KaiwuDB

数据库 解析

快速入门一篇搞定RocketMq-实现微服务实战落地

不在线第一只蜗牛

Proxyman Premium for Mac:强大的网络调试与分析工具

iMac小白

Proxyman Premium下载

基于LangChain-Chatchat实现的本地知识库的问答应用-快速上手(检索增强生成(RAG)大模型)

汀丶人工智能

langchain 智能问答 rag 检索式增强

vue3早已具备抛弃虚拟DOM的能力了

EquatorCoco

DOM 虚拟机 Vue3

如何全面规避医疗数据安全风险?“一中心三大管控域”打开新思路!

BinTools图尔兹

数据库 数据安全 脱敏 电子病历 医疗信息化

Redis开源社区持续壮大,华为云为Valkey项目注入新的活力

华为云PaaS服务小智

华为云

自关联外键插入数据时报错:YAS-02033 foreign key constraint violated parent key not found

YashanDB

Redis开源社区持续壮大,华为云为Valkey项目注入新的活力

华为云开发者联盟

数据库 redis 开源 华为云 华为云开发者联盟

软件测试学习笔记丨后端架构优化设计 - spring boot 增删改查操作

测试人

软件测试

NineData亮相2024中国移动算力网络大会

NineData

数据库 中国移动 移动云 算力网络 NineData

Allavsoft for Mac:强大易用的多媒体下载与转换工具

iMac小白

Allavsoft下载 Allavsoft mac Allavsoft注册版

Java模块化系统:引领代码革命与性能飞跃

伤感汤姆布利柏

探秘Appium:Capability 进阶技巧揭秘!

测吧(北京)科技有限公司

测试

今天分享一个有趣的 Python 库 - howdoi

高端章鱼哥

JetBrains DataSpell for Mac:数据科学家的高效助手

iMac小白

DataSpell注册码 DataSpell下载 DataSpell破解版 DataSpell2024

Syncovery for Mac:高效灵活的文件备份与同步软件

iMac小白

Syncovery下载 Syncovery破解版 Syncovery mac

高防BGP云服务器助你抵御各种网络威胁,业务畅通无忧

一只扑棱蛾子

高防服务器

Redis官方开源的可视化管理工具 - RedisInsight

快乐非自愿限量之名

redis 开源

分享几个.NET开源的AI和LLM相关项目框架

EquatorCoco

人工智能 .net 开源 AI

Footprint Analytics 与 Core Chain 达成战略合作

Footprint Analytics

blockchain NEW chain

OSXBytes Lock-It for Mac(应用程序加密工具)v1.3.0激活版

iMac小白

Aiseesoft Data Recovery for Mac:Mac用户的数据恢复利器

iMac小白

Mac FoneLab Android Data Recovery for Mac:高效恢复Android数据的专业软件

iMac小白

Python文本统计与分析从基础到进阶

华为云开发者联盟

Python 开发 华为云 华为云开发者联盟

JetBrains宣布Project Rider:一款C#跨平台IDE_JetBrains_张龙_InfoQ精选文章