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

來源:互聯網
上載者:User

標籤:

本文來源於我在InfoQ中文站翻譯的文章,原文地址是:http://www.infoq.com/cn/news/2016/02/jetbrains-announce-project-rider


在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官網瞭解各種產品的資訊並下載試用。

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.