More of today’s .NET developers are using non-Windows platforms for application development. Those familiar with JetBrains ReSharper Visual Studio extension will soon have access to JetBrains’ new cross-platform IDE codenamed “Project Rider,” which will provide the same, familiar experience.
“We’ve been working for several years to ensure that ReSharper can work in different environments, independently of Visual Studio,” said Sergey Shkredov, development department lead at JetBrains. “Project Rider is the next, logical step.”
For more than 15 years, JetBrains has provided developers with productivity tools that allow them to focus on higher-value tasks. Its award-winning products include the IntelliJ IDEA IDE, the ReSharper productivity tool for .NET developers, the TeamCity continuous integration and build management environment, and the YouTrack intelligent issue and bug tracker. More than 2 million developers use the company’s products, and another 100,000 join every month.
Meet the Rider Cross-Platform IDE
The Project Rider cross-platform IDE is based on JetBrains IntelliJ platform and leverages JetBrains’ ReSharper technology. In fact, Project Rider includes a lot of the functionality found in ReSharper and IntelliJ-based IDEs such as Quick Fixes, Inspections, and Smart Navigation. Although ReSharper is hosted inside Visual Studio, Project Rider is a complete, standalone IDE.
“ReSharper is still the No. 1 extension for Visual Studio, and one of our flagship products. The fact that Project Rider uses ReSharper reinforces our commitment to ReSharper,” said Shkredov.
Any updates to ReSharper will be included in Project Rider. Conversely, Project Rider enhancements will benefit ReSharper.
Instead of simply reimplementing ReSharper’s features on the IntelliJ Platform, which runs on the JVM, JetBrains chose to use ReSharper in a headless mode, out of process, and enable communication via a fast custom binary protocol. That way, the back end can continue to be ReSharper written in C# running on .NET or Mono, while the front end is written in Kotlin, a statically typed programming language that talks to the IntelliJ Platform APIs.
Developers will have access to the Project Rider Early Adopter Program at or before Build.
“It’s challenging for developers to do cross-platform development using the Microsoft stack. mMore people are migrating their .NET applications to run on Linux, and there aren’t a lot of tools for that,” said Shkredov. “You can use Visual Studio Code or text editors, but what developers really need is a cross-platform IDE that combines features that are comparable to Visual Studio and all the functionality of ReSharper.”
Enjoy Familiar Functionality
The 1.0 version of Project Rider is now being developed. Its initial features include navigation, editing, inspections, Alt+Enter, refactorings, and decompiling, although additional features will likely be announced and demoed at Build.
Navigation. All JetBrains IDEs have smart navigation capabilities. Like those IDEs, Project Rider offers the standard Go To Type, Go To File actions, and IntelliJ Platform’s Search Everywhere feature to rapidly locate symbols, types, and files. It can even search in settings and actions. A Navigate To popup menu is also available, providing access to base/derived symbols in a class hierarchy, or to find usages, with the results displayed in the IDE window.
Editing. Project Rider includes a wide range of smart editing features such as typing assist, Live Templates (including ReSharper 10’s postfix templates), quick info tooltips, and gutter icons for inheritance navigation, context actions, and more.
Inspections. Most of the inspections supported by Project Rider (and ReSharper) are displayed as errors, warnings, and hints in the editor. For example, it uses red code for unresolved symbols and underlining for code issues.
Alt+Enter. All JetBrains IDEs including Project Rider include Alt+Enter support. In addition, most of the menu items from ReSharper’s quick fixes and context actions are available. Using Project Rider, developers can apply bulk actions to a whole file and alter the severity of an inspection directly from the menu.
Refactorings. Refactorings are currently limited, although Project Rider can rename symbols and introduce/inline variables as well as rewrite code in response to Alt+Enter on an inspection highlight.
Decompiler. Developers that want to navigate to a type that they don’t have the source code for can decompile it with Project Rider and display what the C# source would look like. In addition, Project Rider can support, run, and debug multiple runtimes.
Debugger. “One of the most important IDE features is debugging,’’ said Shkredov. “Project Rider can build and run .NET Framework, Mono and DNX projects. It can also debug .NET and Mono Apps. DNX debugging and CoreCLR support are coming soon.”
Project Rider runs on Windows, Mac OS X, and Linux.
For more information, visit www.jetbrains.com/rider.