歡迎您光臨本站 註冊首頁

Rider 2020.1 釋出

←手機掃碼閱讀     admin @ 2020-04-17 , reply:0

Rider 最新變化

在 macOS 和 Linux 上,Rider 2020.1 現在預設在 .NET Core 執行時上執行後端,並提供 Xamarin Hot Reload 和 Dynamic Program Analysis。 它引入了一種簡單的方法來配置編輯器的嚴重性,並增加了對整數值的資料流分析以及更快的程式碼補全速度。 Debug 視窗已經過重新設計,並且 Extract Class 重構和 Coverage Filters 現在可用。

 

在 macOS 和 Linux 上,後端在 .NET Core 執行時上執行

後端在 .NET Core 執行時上執行

歡迎使用 Rider .NET Core 版本! 在 macOS 和 Linux 上,後端終於實現了預設在 .NET Core 執行時而不是 Mono 執行時上執行。 您會立即注意到:

  • 更好的效能.

  • 更低的記憶體佔用。

  • NuGet 恢復現在採用多執行緒(而不像在 Mono 上那樣採用單執行緒)。 這意味著,如果您使用具有 4個邏輯核心的 CPU,則速度變為 4 倍;如果您使用具有 8 個邏輯核心的 CPU,則速度變為 8 倍。

  • 還去除了許多其他 Mono 限制。

順帶一提,當前的 .NET Core 版本是最新、最出色的 3.1,與 3.0 版本相比,它擁有許多效能改進。 

請注意,目前不支援 Windows,只支援 macOS 和 Linux。 我們計劃在今年晚些時候新增 Windows 支援。

您是否想了解有關從 Mono 轉換到 .NET Core 的更多資訊,並檢視效能圖? 檢視這篇博文! 

如果您在 .NET Core 上執行 Rider 後端時遇到任何問題,並且想要返回 Mono 執行時,請選擇 Help | Switch IDE runtime to Mono。 如果您有任何問題,請別忘記告訴我們。

Xamarin Hot Reload

Xamarin Hot Reload

現已實現對 Xamarin Hot Reload 的初步支援。 現在,在裝置或模擬器上除錯時,Rider 會將在 Xamarin Forms XAML 中所做的更改自動應用到應用程式,無需重新構建和重新部署整個應用程式。

請注意存在的限制:如果裝有 Rider 的 PC/膝上型電腦和 iOS 裝置不在同一個 Wi-Fi 網路中,則即使將 iOS 裝置通過 USB 連線到 PC/膝上型電腦,Hot Reload 也無法正常工作。

除此之外,Xamarin 支援還獲得一個重要修復:在 iPhone XS Max 裝置上執行 Xamarin.iOS 專案時,Invalid target architecture 'arm64e' 錯誤不再出現。

 

檢視博文瞭解更多更新。

Dynamic Program Analysis (DPA)

Dynamic Program Analysis (DPA)

我們很高興引入 Dynamic Program Analysis。 每次在 Rider 中執行您的專案時,DPA 都會開始收集記憶體分配資料。 關閉應用程式後,DPA 將顯示檢測到的問題列表:閉包以及到大型和小型物件堆的分配。 最大的優點在於,您無需啟動任何「分析會話」即可獲取快照。 可以像往常一樣正常執行,並且所有資料都將在後臺收集,開銷幾乎為。 在各種實際解決方案上測試 DPA 的結果表明,速度只會降低 0% 到 2%。

請注意:DPA 僅適用於 Windows,並且無需單獨的許可證即可將其啟用。

瞭解更多:使用 Dynamic Program Analysis 自動檢測應用中的記憶體問題

整數值的資料流分析

整數值的資料流分析

這一版本的 Rider 引入了一種新型程式碼分析,可以在應用程式中跟蹤整數值的用法。 這種新型的分析會跟蹤所有 int 區域性變數的值如何變化,並驗證這些變數上的所有常見運算的正確性,以檢測無用或可能出錯的程式碼段。 即,它會警告您:

  • 結果總是為 true 或 false 的關係/相等運運算元。

  • 檢查 int 值的啟發式不可到達的 switch case。

  • 無意義的算術運算,如乘以 1、加 0 等。

  • 可能的 int 溢位。

  • 可能的除以 0

為了改進分析的精確性,我們還添加了兩個新的 JetBrains.Annotations 特性來使用 int 型別的型別成員和引數:([NonNegativeValue] 和 [ValueRange(from, to)])。 這些特性指定了特定 int 成員的值在執行時如何變化。

Unity 支援

Unity 支援

  • 我們在資產索引編制的記憶體使用和速度方面進行了重大改進。 現在,Rider 會在檢視您的資產之前為所有程式碼建立索引,這意味著所有生產力功能(例如程式碼補全、高亮顯示和檢查)都可以比以前更快地呼叫。 資產索引編制將在解決方案載入後繼續,同時您可以繼續工作,而一旦索引編制完成,Rider 便會查詢用法,甚至在資產內部重新命名。 當然,一旦完成,索引將不斷更新,僅檢視新更改的檔案。

  • 資產索引編制現在還更加智慧。 它瞭解程式碼在 Nested 和 Variant 預製件中的用法,並顯示 ScriptableObjects 的用法和序列化欄位的值。

  • 現在,單元測試發現可以更好地與 Unity 專案一起使用,而 Rider 會自動在專案中查詢所有 Edit 模式和 Play 模式測試。

  • 我們添加了一個新的效能檢查 Prefer jagged arrays to multidimensional arrays,在熱路徑中可以提供更好的效能。 這是一個微優化,因此僅建議在效能關鍵上下文中使用,例如 Update 方法或從 Update 呼叫的任何內容。

  • Rider 將不再為 Unity 專案的程式碼補全建議 Boo.Lang.List 或 System.Diagnostics.Debug

  • 我們在 Generate 對話方塊中調整了事件函式的順序,以首先放置最重要的方法。 And when generating functions from the Alt+Enter menu, they will generate at the right location, too.

  • 有關更多更新和修復,請參閱 GitHub 儲存庫

C# 支援

C# 支援

我們繼續添加了對 C# 8 語言功能的更多支援。 我們在後臺對 C# 語言支援進行了許多重構來準備程式碼分析和其他功能(如重構和 ReSharper Build),以支援可空引用型別 (NRT)。 在 Rider 2020.1 中,程式碼分析會報告與可空引用型別相關的編譯警告併為其中大多數警告提供了快速修復。

還有一些新的檢查和快速修復:

  • 針對可空引用型別,檢測冗餘型別引數約束。

  • 檢測並使用方法的 async 過載(可用時),而不使用 sync 過載。

  • 使用 nameof 表示式,而不使用 typeof(SomeType).Name 構造,以便獲得當前型別的名稱。

程式碼補全

程式碼補全

在過去的一年中,我們收到了一些關於程式碼補全彈出視窗的報告,指出這些彈出視窗需要很長時間才會顯示。 我們已經解決了這個問題,現在當您開始輸入後,程式碼補全彈出視窗的顯示速度顯著提高,尤其是在大型解決方案中。

此版本提供的另一個非常方便的功能是,如果您不想在程式碼補全中看到標記為 Obsolete 的成員,可以將其隱藏。

最後但同樣重要的是,從程式碼補全彈出視窗中補全一個專案現在可以遵循您的程式碼樣式設定。

重新設計的 Debug 視窗

重新設計了 Debug 視窗

我們完全重新設計了 Debug 工具視窗的 UI,使其儘可能乾淨整潔。 當只有一個除錯會話執行時,選項卡的佈局會得到簡化,因為所有選項卡現在都位於一個級別上。 選項卡標題佔用的空間更少,因此有更多空間顯示偵錯程式內容。 存在多個會話時,將新增一個選項卡層來分隔各個會話。

同時,我們還合併了 Threads 和 Frames 檢視。 如果您目前不需要 Threads 檢視,則可以通過點選 Hide threads view 圖示將其隱藏。

偵錯程式引擎中的更新

偵錯程式引擎中的更新

我們還更新了偵錯程式引擎,以便增強您的除錯體驗:

  • 現在,您可以從最初在偵錯程式下啟動的程序中分離,而無需終止應用。

  • Step Into 操作預設啟用 Smart Step Into (Preferences/Settings | Build, Execution, Deployment | Debugger | Stepping | .NET Languages | Always do Smart Step Into)。

  • 偵錯程式支援 .NET Core x86 執行時。

  • 現在,執行緒名稱顯示在執行行中,以幫助您瞭解應用程式當前的執行位置。

  • 在發生異常而停止除錯會話後,您可以執行 Skip to Here/Cursor 操作。

  • 現在,您可以更好地控制 Debug Output 視窗,並且可以在 Debug Output 中關閉服務訊息。

以輕鬆的方式配置編輯器的嚴重性

以輕鬆的方式配置編輯器的嚴重性

藉助這項新功能,您可以輕鬆更改編輯器的高亮顯示級別。 只需在非模態彈出視窗中點選一下,即可開啟或關閉 Code Vision Parameter HintsUnity Performance HintsErrorsWarningsSuggestionsContext actions 以及更多元素。 在程式碼編輯器選項卡的右下角可以找到鉛筆圖示。

單元測試的更新

單元測試的更新

我們調整了 Unit Test Session 和 Unit Test Explorer 視窗中的工具欄。

  • 多個圖示已從左側工具欄移至頂部。

  • 現在,可以使用頂部工具欄中的新文字框,通過文字搜尋來篩選單元測試樹。

  • 預設情況下,FailedAborted 和 Inconclusive 狀態已合併為 Broken 如果您希望將它們分開,請點選頂部工具欄上的「齒輪」圖示。

除此之外,我們還添加了三大功能:

  • 您可以使用 Unit Test Explorer 和 Unit Test Session 工具視窗中新增的高階 Group by 功能建立自定義分組。 使用新增的 Duration 元素,您現在可以根據執行測試所需的時間對單元測試進行分組。

  • 如果您有多個單元測試(如今通常會這樣)並且不想看到其中一些,可以在 Unit Test Session 工具視窗中按目標框架進行篩選。

  • 您可以匯出和匯入任何單元測試會話。 當您更改程式碼中的某些內容並希望為兩個分支執行/使用同一組單元測試時,這讓您可與團隊、在計算機之間或在分支之間共享會話。 此外,導出的檔案與 ReSharper 完全相容,因此您可以與使用 ReSharper 的同事共享 Rider 中的單元測試會話,反之亦然。

瞭解更多:Rider 2020.1 中的測試執行程式更新

反應式 TFS 客戶端登陸 RTM

反應式 TFS 客戶端登陸 RTM

在 Rider 2019.3 中,我們添加了一個實驗性 TFS 客戶端,此客戶端可為 Checking for changes 操作提供顯著的速度改進。 在當前釋出週期中,我們繼續在該客戶端上投入了大量精力。 

最終,我們的 TFS 客戶端釋出了第一個版本,帶來了許多改進。 我們來看看兩個最重要的改進。 首先,啟用 Version Control Integration 現在適用於使用 Visual Studio 在本地建立的 TFS 工作區。 這意味著您不再需要在 Rider 中從頭開始重新建立本地工作區。 第二,我們大幅提高了 Delete 和 Rollback 操作的效能。

要開始使用 TFS 客戶端,請轉到 Settings | Version Control | TFVC 並啟用它。

程式碼編輯器更新

程式碼編輯器更新

像所有 JetBrains IDE 一樣,Rider 現在在所有主題中使用 JetBrains Mono 作為預設字型。 我們希望您喜歡它!

現在,終於完全支援到目前為止 Rider 中一直缺少的另一個 ReSharper 功能:在解決方案的檔案中貼上程式碼時,可以自動匯入名稱空間。

如果您手動編輯與 NuGet 相關的檔案,我們認為您將樂於從 Rider 獲得協助,因為它現在初步支援編輯 NuGet.Configpackages.config 和 *.nuspec 檔案,包括程式碼補全、語法驗證和快速文件彈出視窗。

以下較小的功能增強也值得一提:

  • 方法分隔符現在可以在 C# 中使用,以可視方式分隔介面、類、方法等。

  • The shortcuts Alt+Shift+Up / Down / Right / Left Arrow will execute a block selection in the same way they do in Visual Studio.

  • C# 現在支援兩對操作 Move Caret To Code Block Start/Move Caret To Code Block End 和 Move Caret To Code Block Start with selection/Move Caret To Code Block End with selection,並且這兩對操作的行為與在其他 JetBrains IDE 中的行為相同。

  • 文件工具提示會在滑鼠懸停時顯示高亮顯示為錯誤的程式碼符號。

Extract Class 重構

Extract Class 重構

另一個期待已久的 ReSharper 重構終於登陸 Rider - Extract Class

想知道為什麼您需要此重構? 想象一下,您有一個類正在完成實際上應當由兩個不同的類完成的任務。 使用此重構是將複雜類分解成兩個單一職責類最安全、最有效的方法。Extract Class 將幫助您選擇要從舊類轉移到新類的方法和欄位。 對於任何中斷的依賴項和可訪問性問題,它還會發出警告,並建議衝突解決方案選項。

Solution Explorer 檢視

Solution Explorer 的更新

Solution Explorer 檢視引入了兩個新的實用資料夾,可為您提供有關專案的更多資訊:作為 Assemblies 資料夾的子資料夾的 Implicit references,以及 MSBuild import targets

除此之外,還有一些較小的更新:

  • 我們向 Add References 對話方塊中添加了一個新功能,名為 Recent Assemblies

  • 我們嚮應用程式設定檔案 (*.settings) 中引入了一個簡單的設計器。

  • 檔案屬性可用於 Solution Explorer 檢視中的所有檔案 (在 View | Appearance | Details in Tree Views 下設定) 。

  • 現在,在 macOS 和 Linux 上的 .NET Standard 專案中,Resx 程式碼生成的效果更好。

程式碼覆蓋率和效能分析的更新

程式碼覆蓋率和效能分析的更新

為了更好地控制您在 Rider 中獲得的單元測試覆蓋率結果,我們添加了 Coverage Filters。 要指定這些篩選器,請轉到 Preferences/Settings | Build, Execution, Deployment | dotCover | Filtering

如果您在 Linux 或 macOS 上進行效能分析,我們為您帶來了一些好訊息:在這些作業系統上,.NET Core 應用程式終於可以在 Tracing 模式下進行效能分析了。 在 Linux 上,您現在還可以將分析器附加到 .NET Core 應用程式。

執行配置和構建

執行配置和構建

  • 我們添加了一個非常方便的操作:Cancel build

  • 所有執行配置都有 Build/Clean Project 任務。 這些任務使您可以在啟動執行配置之前選擇要構建或清理的專案。

  • 現已支援 UpToDateCheckInput MSBuild 屬性。 

  • Publish to folder 執行配置的 UI 現在支援 ARM 識別符號和任意自定義目標執行時識別符號。

  • 捆綁的 MSBuild 已更新至 16.5

反編譯器和 IL Viewer

反編譯器和 IL Viewer

我們為 Rider 的反編譯器和 IL Viewer 添加了一些新功能: 

  • 可空引用型別 (NRT) 支援可用於反編譯器。 請注意,這僅適用於宣告,不適用於方法的主體。

  • 支援反編譯介面的預設成員。

  • 對反編譯 tuple 元件名稱的支援得到了改進。

  • 反編譯後,外部原始檔中現在可以使用 IL Viewer Code Vision

版本控制支援

版本控制支援

  • Code Vision 現在可以顯示方法的歷史記錄。 預設啟用此功能,而不是 VCS Annotate(可在 Preferences | Editor | Code Vision | VCS Actions 中調整)。

  • Git Branches 彈出視窗獲得了一個顯式搜尋欄位和一個經過重新設計的 Refresh 按鈕。

  • 傳入(藍色)和傳出(綠色)提交指示器已新增到狀態列。

  • 檢視新的對話方塊:Interactively Rebase from Here

  • 根據您使用的 VCS,Repositories 工具視窗現在稱為 GitSubversion, Mercurial 或 Perforce

  • Diff 和 Merge 檢視現在支援程式碼高亮顯示。

  • 如果您的計算機上沒有 Git,Rider 將為您自動下載並安裝 Git。

適合 F# 開發者的新功能

適合 F# 開發者的新功能

為了改善 Rider 中的 F# 支援,我們進行了大量改進和修復,旨在為您的日常工作提供幫助:

  • 現在可以使用 Send project references to F# Interactive 操作。

  • 除錯時,滑鼠懸停時的評估工具提示適用於更多表達式:方法和型別中的自引用限定符 (this.Property) 以及索引器表示式 ("foo".[1])。

  • 添加了 Type 檔案模板。

  • 程式碼分析器現在可以並行執行。

  • 用於現有程式碼檢查的幾個新的快速修復,例如 FS0005: Field not mutable 檢查的 Make field mutable 快速修復。

  • 一些新的程式碼檢查以及相應的快速修復,例如「Redundant Attribute suffix」檢查。

  • 兩個新的程式碼意圖:Elif to If/If to Elif 和 Negate If expression condition

  • Code Vision 添加了新的操作 Copy Inferred Type,並且不再顯示型別的父名稱空間,以便使顯示的資訊更短。

  • Extend Selection 可以選擇整個 () 表示式。

 

有關更多更新和修復,請參閱 GitHub 儲存庫

Web 開發

Web 開發

  • 用於轉換為可選鏈和/或空值合併以及從用法推斷引數的新意圖。

  • 滑鼠懸停時可以顯示文件彈出視窗。

  • Vuex 和 Composition API 支援。

  • 儲存時執行 Prettier 格式化。

  • Go to 彈出視窗中的完整檔案路徑。

  • 對 TypeScript 專案的 Yarn 2 支援。

  • 有關 Web 開發更新的更多資訊,請參閱 WebStorm 2020.1 最新變化

資料庫支援

資料庫支援

  • 以 Excel 格式匯出。

  • 支援 utPLSQL 和 Tsqlt 測試框架。

  • 在程式碼編輯器中檢視結果(預設情況下禁用)。

  • 新身份驗證選項.

  • 共享 SSH 配置.

  • 在 MongoDB 中更好地篩選資料。

  • 以及 DataGrip 2020.1 最新變化中介紹的更多資料庫相關功能。

其他功能和改進

其他功能和改進

  • Rider 終於開始支援 WIX (Windows Installer XML Toolset) 專案了! 

  • 支援 Godot 遊戲引擎的新外掛現在可在 Rider 2020.1+ 中使用。 它在 GitHub 上是開源的。 

  • C# 程式碼樣式設定現在可以搜尋。

  • 您可以讓 Rider 使用與 ReSharper 相同的整機範圍(全域性)設定檔案,以同步兩個工具的設定(使用 File | Settings | Tools | ReSharper | Synchronize machine-wide Rider and ReSharper settings 調整此行為)。

  • 程式碼格式化為 C# 程式碼樣式帶來了涵蓋尾隨逗號的新設定。 可以在 Preferences | Editor | Code Style | C# | Syntax Style | Trailing comma 下找到它們,並且它們都與 StyleCop SA1413 檢查相容(除了極少的個別情況)。

更多功能

更多功能

  • 新的 Zen 模式結合了免打擾模式全屏模式

  • 如果要並排執行終端會話,請垂直或水平拆分 Terminal 工具視窗。 您可以從 Terminal 呼叫上下文選單來建立、導航和關閉拆分的終端會話。

  • HTTP 客戶端有很多改進。 您可以直接從 HTTP 請求檔案自動補全 URL 並導航到相關的端點;您可以從 Endpoints 檢視生成 HTTP 請求;HTTP 客戶端現在可以正確地自動補全路徑變數。

  • 現在,所有作業系統都可以使用統一的 IntelliJ Light 主題。

  • 現在,Windows 10 上的頂部視窗邊框在無邊距模式下看起來更美觀。

IntelliJ IDEA 2020.1 最新變化


[admin ]

來源:OsChina
連結:https://www.oschina.net/news/114953/rider-2020-1-released
Rider 2020.1 釋出已經有326次圍觀

http://coctec.com/news/all/show-post-230430.html