This article is from my translation of the Infoq Chinese station, the original address is: Http://www.infoq.com/cn/news/2016/02/jetbrains-announce-project-rider
At NDC London, JetBrains released a new project, the cross-platform C # IDE, which is based on IntelliJ platform and is developed using ReSharper technology. The project is named Project Rider, which contains many of the features of ReSharper and IntelliJ-based Ides that are already familiar to you, such as quick fixes, detection, intelligent navigation, and more. Although ReSharper is parasitic in Visual Studio, Project Rider is a fully functional, independent IDE.
Although the current project is still in its early stages, it already contains the following features:
Navigation-Intelligent navigation is a major feature of JetBrains Ides, and Project rider is certainly no exception. It provides a standard go to type, go to file, and integrates IntelliJ platform's "Search Everywhere" feature to turn to symbols, types, files, and even to search in settings and actions.
You can also use the navigate to pop-up menu, find the parent class/subclass in the class inheritance system, and find where to use it, and the results will appear in the Standard IDE tool window.
Edit--project Rider implements a number of smart editing features, from type assist (such as inserting curly braces and automatic formatting) to live Templates (including postfix templates for ReSharper 10), as well as Quick Info tips and sidebar icons. So it can inherit the navigation and the context action.
Check that most of the checks supported by--resharper are displayed in the editor in the form of errors, warnings, suggestions, and hints. This includes highlighting the red code for unrecognized symbols and underlining underscores for code problems, and so on.
alt+enter--If there is no alt+enter support, then the JetBrains IDE is imperfect, and most of the menu items and contextual actions ReSharper quick fixes are available. Project rider also supports applying multiple actions to the entire file, and can directly modify the severity level of the check in the menu.
Refactoring--project Rider provides limited refactoring capabilities. Most refactoring requires some form of user interface, but these interfaces are not currently implemented. Project rider can rename symbols and introduce or inline variables, and you can modify the code based on Alt+enter.
Decompile--If you navigate to a type that does not have source code, Project rider will help you decompile it, and the result is similar to the C # code.
Of course, as a standard IDE, it also contains many other features:
- Multiple run-time support. Project Rider supports the. NET framework and Mono, and support for CORECLR is also underway. It can load MSBuild solutions with MSBuild, as well as the DNX project. In addition, it contains a template for creating a new project. When you create an empty project, it really is empty!
- Build, run, and Debug. One of the most important features of an IDE is debugging, and Project rider of course is no exception. It can build and run the. NET Framework, Mono, and DNX projects, and can be debugged. NET and mono applications, DNX debugging and CORECLR support are in progress. Any build errors are displayed in the Build tool window, and the Debug tool window is used to display the call stack, variables, and observation window.
- Cross-platform. Just as you can run and debug multiple runtimes, Project rider itself can run on multiple platforms. It can run on Windows and Mac OS X, but it's also available on Linux, but it hasn't been tested yet.
Working style
Project Rider is a standalone IDE built on top of IntelliJ platform, just like Webstorm, Datagrip and other Ides of JetBrains. However, the difference is that, compared to the IntelliJ Platform (running on the JVM) to re-implement the ReSharper feature, Project Rider and ReSharper are communicating through a very fast custom binary protocol. This way, the backend is still written in C # and runs on the. NET or ReSharper on Mono, while the front end is written using Kotlin, and IntelliJ platform APIs are called. We'll cover the details of the implementation in depth in our blog later.
Why create a C # IDE?
The main is to provide a choice for the vast number of developers. We believe in providing a great user experience for developers who work in different environments. Then why is it now? This is because we think it is the right time for the following reasons:
- In order for ReSharper to be able to use in different environments (independent of visual Studio), we have worked hard for years, Dotpeek is an example.
- Now that more and more developers are using non-Windows platforms, we want to give them the same experience that they are familiar with ReSharper.
- Finally, Microsoft is now moving its platform and the C # language toward open source, such as CORECLR.
What does this mean for resharper?
ReSharper is still the best extension of Visual Studio and one of our leading products. The use of ReSharper in Project rider reinforces our commitment to ReSharper because any updates to ReSharper will not only benefit ReSharper, but Project rider will also benefit greatly from it. In addition, we hope that the work done on Project rider will, in turn, contribute to the continuous development of resharper. In essence, Project rider only increases the effort we make on resharper.
What is the licensing model?
While it's still too early to talk about specifics, the licensing model will be consistent with other products in JetBrains Toolbox. When pricing is set, we take into account the many scenarios that may arise, such as the possibility that someone might want to use two tools, and so on. We hope to set out the price information as soon as possible.
Road Map
It's already on the way to 1.0. We are very confident in the architecture and believe that we have laid a very good foundation to achieve the features planned in version 1.0. We have implemented a number of functions, but there are many features that need to be implemented. We planned to few moments open a private EAP and end of February. The registration form will be available on our blog and Twitter. After this private EAP, we will turn to public EAP. When to open the public EAP depends on the feedback submitted by the early testers. Our goal is to release the official version this fall. We are excited about Project rider and want you to share the joy with us. If you have any questions, please feel free to ask. Don't forget to follow our Twitter account @jetbrainsrider to find out about future updates! I believe project rider will bring a wisp of breeze to the vast number of C # developers. According to JetBrains's previous product style and features, we have reason to believe that the new IDE will not disappoint you.
JetBrains is a Czech-based software development company located in Prague, Czech Republic. JetBrains is known for a variety of excellent development tools, such as IntelliJ idea, Webstorm, Pycharm, RubyMine, Appcode, Phpstorm, TeamCity, Youtrack, Datagrip, etc. Each tool is beloved by the vast majority of developers. JetBrains's tools cover a broad range of common software development platforms such as Macs, Windows, and Linux. Interested readers can go to the JetBrains website to learn about various products and download the trial.
JetBrains announces Project Rider: A C # cross-platform IDE