【微軟Visual Studio面世20週年鉅製】全宇宙功能最強大IDE Visual Studio 2017 正式版發佈

Visual Studio 2017 正式版發佈,該版本不僅添加了實時單元測試、實時架構依賴關係驗證等新特性,還對許多實用功能進行了改進,如代碼導航、IntelliSense、重構、代碼修復和調試等等。無論使用哪種語言或平臺,都能節省開發者在日常任務上花費的時間和精力。

此外,該版本還帶來了一個新的輕量化和模塊化的安裝體驗,可根據需要量身定製安裝。多個增強功能彙集在一起,使 Visual Studio 2017 的啓動速度比 Visual Studio 2015 快3倍,解決方案加載時間縮短 2-4倍。

具體內容如下:

亮點

1、導航增強:Visual Studio 2017 極大地改善了代碼導航,並對結果進行着色,提供自定義分組、排序、過濾和搜索。強大的 Go to All(ctrl + T 或 ctrl +,),能對解決方案中的任何文件、類型、成員或符號聲明的快速、完整搜索。

2、無須解決方案加載文件:Visual Studio 2017 可以直接打開並處理 C#、 C ++ 、 Ruby 、 Go 等一系列語言的任何文件。詳情

3、智能過濾:IntelliSense 現在提供過濾器,幫助得到你所需要的,而不必涉足過多的步驟。

4、語言改進:添加了新的 C# 語言重構命令,幫助將代碼以最新標準現代化。新的風格分析器和對 EditorConfig 的支持能夠協調整個團隊的編碼標準。

5、CMake support for C++:可以通過在 Visual Studio 中直接加載 CMake 項目來開始編碼。

6、Linux support for C++: Visual C ++ for Linux 開發現在是 Visual Studio 2017 的一部分。詳情

7、Live unit testing:顧名思義,實時告訴你單元測試將通過或失敗,而不用離開代碼編輯器。 詳情

8、Run to Click: 當在調試器中停止在某個中斷狀態時,將鼠標懸停在一行代碼上,你會看到 Run to Click glyph。單擊可在該行停止並下次繼續以此執行。

9、Exception Helpers:可立即查看異常的根本原因,即時訪問內部異常。此外,可以在拋出異常停止時通過單擊複選框添加條件來排除從指定模塊拋出的異常類型。

10、小而輕的安裝:Visual Studio 2017 新的安裝程序更容易啓動和運行。最小安裝只有以前版本的十分之一大小,只需一兩分鐘即可完成安裝。

不想看以下詳細概要和說明的,可查看版本亮點博文。

概要

Develop:快速導航, 編寫和修復代碼

  • 全新的安裝體驗 - 減少最小佔用空間,實現更快、更自定義的安裝體驗,並支持離線安裝。

  • Visual Studio IDE -  在 Visual Studio 2017 中功能得到大幅提升,包括減少啓動和解決方案加載時間、改善的登錄和身份驗證、改進的代碼導航等等。

  • Visual C++ - 在 2015 到 2017 版本中沒有特別重大的改變。但依然帶來了更好的 C++14 conformance level、CMake 支持和構建吞吐量,能夠提高生產力。

  • C# 和 Visual Basic - 擴展了對新的 C#7.0 和 Visual Basic 15 語言功能的支持,並引入新的重構,允許你在一個 action 中組織源碼。

  • F# -  支持 F#4.1 語言特性,對 F#編譯器和 FSharp.Core 有所改進,以及基於 Roslyn Workspaces 的新編輯器。

  • JavaScript 和 TypeScript - TypeScript 2.1 適用於 Visual Studio 中的所有 TypeScript 項目。新的 JavaScript 語言服務默認可用並啓用。

Debug: 輕鬆調試、配置和診斷

  • 調試和診斷 - 對代碼異常輔助程序進行大修,帶來了更快的代碼導航。 此外,在“診斷工具”窗口中還有對應用事件的新摘要以及對 CPU 工具的幾項改進。

Test: 用全面的測試工具編寫高質量代碼

  • Live Unit Testing - 在編輯器中可視化單元測試的結果和代碼覆蓋過程。

  • Testing Tools - 使用測試瀏覽器將自動化與測試用例工作項進行關聯。

Collaborate(協作): 使用版本控制,敏捷、高效協作

Extend: 通過構建擴展自定義喜好

Equip: 利用工具提高生產力並探索新功能

Visual Studio 2017 中的新增功能

IDE 的改進:

  • Visual Studio 已經經過優化,減少了啓動時間和解決方案加載時間。首次啓動 Visual Studio 至少快 50%。

  • Visual Studio 現在將監控解決方案加載或編輯的擴展性能。可通過 IDE 中的通知欄收到有關性能不佳的擴展的警報。新的性能中心(幫助>管理 Visual Studio 性能)不僅可以查看影響性能的擴展,還可以發現影響啓動性能和更改其啓動負載行爲的工具窗口。

  • 可以在新的 Visual Studio 安裝程序中選擇安裝 Visual Studio 的 GitHub 擴展

  • 重新加載所有項目已被替換爲重載解決方案,以在切換到 VS 外部分支時支持更好的性能。當使用 Git 命令行切換分支時,在分支切換後選擇重載解決方案以實現最大性能提高。

  • .NET Core 和 ASP.NET Core 項目的文件全局功能已增強。參閱 project file globbing 以瞭解更多細節。

  • 克隆後,現在將自動轉到存儲庫的文件夾視圖。可以使用解決方案資源管理器中的新解決方案選擇列表查看文件。

起始頁

重新設計的起始頁具有新的 “打開和創建” 功能:

  • 從 VSTS 獲取遠程倉庫或使用 MRU 輕鬆打開本地項目和解決方案

  • 起始頁 MRU 顯示在其他計算機上克隆的倉庫,以便可以輕鬆地在當前計算機上克隆它們。

  • 直接從起始頁面創建一個可搜索模板的新項目和最近使用的模板列表。最近使用的模板還將使用個性化帳戶在 Visual Studio 實例之間漫遊

  • 通過起始頁面上的 “從 VSTS 導出” 選項,從體驗來自 VSTS 的快速啓動新的克隆

  • 可解除的 “開始使用” 部分

  • 精細的視覺設計,以處理較小屏幕上空白空間的利用

新的起始頁如下所示:

改進代碼導航,在 Visual Studio 2017 中對代碼導航功能進行了重大改進:

  • 跳轉到全部 (Ctrl +, or Ctrl + T) 可讓你快速找到並轉到代碼中的文件,類型,方法和其他元素。即使在大型代碼庫中,也可以找到任何種類項目。在 C# 和 Visual Basic 中,還添加了 “模糊” 匹配,如果你拼寫錯一個類型名稱,仍然可以搜索得到結果。還實現了 Go To Line(Ctrl + G)。該功能讓你在編輯菜單的頂部找到 Go To 系列命令。

  • 查找所有引用 (Shift+F12) 也已經過重大改進 (目前僅支持 C#, Visual Basic, 和 C++),提供高級分組,過濾,排序,在引用結果中搜索以及高亮結果(適用於 C# 和 VB),所以你可以清晰理解你的引用,並獲取所需的代碼行。在鼠標懸停在引用的項目上時,會有一個懸浮提示,其中包含源代碼中的引用上下文(適用於 C# 和 VB)。通過切換工具欄中的保持結果按鈕,下一次調用查找所有引用將在新窗口中填充引用結果。這允許你在當前窗口中保留當前結果。

  • 結構引導線現在在編輯器中已重新繪製,以便可以輕鬆地查看正在使用的代碼的結構。當鼠標懸停時,將顯示包含當前代碼塊相對於其祖先塊的上下文的懸浮提示。該功能當前支持 C#, Visual Basic 和 XAML 文件,以及通過 TextMate 語法支持的任何文件。(在 “工具”>“選項” 對話框中,通過取消選中 “文本編輯器” >“ 常規” 類別下的 “顯示結構引導線” 複選框禁用此功能)

Visual C++

C++ 代碼分析

用於執行 C++ 核心指南的 C++ 核心檢查器現在與 Visual Studio 一起發佈。只需在項目屬性頁中的代碼分析擴展對話框中啓用檢查器功能,運行代碼分析時就會自動引入該擴展。

CppCoreCheck properties page

C++ 編譯器

更新了 C++ 編譯器和標準庫,增強了對 C++11 和 C++14 功能的支持,以及對 C++17 標準中某些功能的初步支持。要注意的是,編譯器仍然缺少 C++11 和 C++98 標準中的一些功能。Visual Studio 2017 允許將 /sdl 和 /await 一起使用。

此版本在優化和代碼生成方面帶來了幾個改進。一些顯着的改進包括:

  • 改進的循環代碼生成:支持自動向量化的常數整數除法,更好地識別 memset 模式

  • 改進代碼安全性:改進緩衝區溢出,而且 /guard:cf 現在可保護生成跳轉表的 switch 語句

  • 當使用協同例程時,Experimental 關鍵字 “yield” 已刪除。你的代碼應該更新爲使用 “co_yield”。有關更多信息,請參閱 Visual C ++ 團隊博客

C++ 庫

  • [STL] basic_string 的性能改進

  • [STL] 增加了 <any>, <string_view>, apply(), make_from_tuple()

  • [STL] std::vector 在正確性和性能方面已經進行了重大改進

  • [STL] The STL 現在避免取消引用空花括號指針

  • [STL] 添加了 <optional>, <variant>, shared_ptr::weak_type, 和 <cstdalign>.

  • [STL] 有關 STL 改進的完整列表,請參見:Visual C ++團隊博客

完整發布日誌點此查看

下載地址:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章