O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Visual Studio 2017 新功能探索 (Study4.TW)

4.935 visualizações

Publicada em

這是我 2017/2/25 在 Study4Dev - Visual Studio Everywhere 台中場的演講簡報,詳細介紹許多 Visual Studio 2017 開發工具的全新功能。

地表最強開發工具 Visual Studio 2017 即將問世,全新版本不但安裝時間短、執行速度快,全新的開發與偵錯能力更是讓人大開眼界,想了解如何利用全新工具大幅增加開發生產力,你不可錯過這場令人興奮的現場展示。

Study4Dev - Visual Studio Everywhere 台中場
http://study4-tw.kktix.cc/events/study4devtaichung

Publicada em: Tecnologia
  • Awesome lonely girl looking for fun on webcam with the you now - www.xslideshare.usa.cc
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

Visual Studio 2017 新功能探索 (Study4.TW)

  1. 1. Visual Studio 2017 新功能探索 多奇數位創意有限公司 技術總監 黃保翕 ( Will 保哥 ) 部落格:http://blog.miniasp.com/
  2. 2. 全新安裝體驗 Installation Experience
  3. 3. Visual Studio 2017 安裝特色 • 更輕量的安裝 – 更小更快的安裝過程 • 完全客製化安裝 – 完全依據您的需要選擇必要的開發元件 • 更低的系統衝擊 – 安裝過程只有極少量的系統檔案與系統機碼被建立 – 各版本之間 (2015, 2017 RC, 2017 RTM, …) 互不影響 3
  4. 4. Visual Studio 2017 版本 • Visual Studio Community 2017 – 支援版控、語法高亮、開發偵錯、超過 20 種程式語言 – 可開啟任意資料夾 (無須任何方案檔或專案檔) • Visual Studio Professional 2017 – 支援 CodeLens (程式碼透視鏡) • Visual Studio Enterprise 2017 – 支援完整的 DevOps 開發體驗 – 支援 Live Unit Testing – 支援 Live Architecture Dependency Validation 4
  5. 5. 程式碼導覽功能 Code Navigation
  6. 6. 結構輔助線 (Structure Guide Lines)
  7. 7. 上一個方法、下一個方法 • 建議自訂快速鍵 – Alt + ↑ (上一個方法) – Alt + ↓ (下一個方法)
  8. 8. 全新的「移至」功能 ( Go To) • 快速搜尋 – Ctrl + , – Ctrl + T • 跳至指定行號 – Ctrl + G
  9. 9. 尋找所有參考 (Find All References) • 全新的介面讓搜尋結果 更加清楚明瞭 • 快速鍵 – Shift+F12
  10. 10. 開啟資料夾模式 Open Folder
  11. 11. 可以開啟任意資料夾的專案
  12. 12. 可從檔案總管開啟任意資料夾
  13. 13. 可開啟無須方案或專案檔的專案 • 開發時期依然支援以下功能 – 語法高亮 – 程式碼導覽 • 搭配 Ctrl-, 或 Ctrl-T 使用 – 程式碼偵錯 • C++ (CMake) • Node.js - JavaScript/TypeScript • Python – 智慧型感知輸入 (IntelliSense)
  14. 14. 解決方案總管 - 資料夾檢視 • 限定方案總管顯示範圍 (右圖) • 在檔案總管中開啟資料夾 • 開啟開發人員命令提示字元 • 輕易切換不同模式 (下圖) – 資料夾檢視 – 方案總管檢視
  15. 15. 資料夾專案的啟動設定 • 設定方法 – 在可啟動執行的檔案 按下滑鼠右鍵,選擇 【設定為啟動項目】
  16. 16. 資料夾專案的偵錯設定 • 設定方法 – 只要在可偵錯的檔案上 按滑鼠右鍵,選擇 【偵錯並啟動設定】 即可進行設定! • 設定檔路徑 – .vs/launch.vs.json – 支援 IntelliSense
  17. 17. 資料夾專案的工作設定 • 設定方法 – 只要在可任意檔案上 按滑鼠右鍵,選擇 【設定工作】即可! • 設定檔路徑 – .vs/tasks.vs.json – 支援 IntelliSense
  18. 18. tasks.vs.json 範例 { "version": "0.2.1", "tasks": [ { "taskName": "工作-app", "appliesTo": "app.js", "type": "command", "command": "cmd", "args": ["/C", "npm", "test"] } ] }
  19. 19. 利用 EditorConfig 自訂文字編輯器設定 EditorConfig
  20. 20. 全新 EditorConfig 編輯器設定 • EditorConfig 是在開源社群常見的編輯器設定檔 – 預設檔名:.editorconfig – 檔案路徑:通常位於專案或方案根目錄下 • 使用方式 – 建立 .editorconfig 編輯器設定檔 – 將檔案加入版本控制系統並與團隊共用一致的編輯器設定 – 開發人員在寫 Code 的時候,編輯器會自動提示格式錯誤 • 設定檔範例 – https://github.com/dotnet/roslyn/blob/master/.editorconfig
  21. 21. 支援的 EditorConfig 屬性 • 目前 Visual Studio 2017 RC 支援的屬性如下 – root = true • 宣告此 .editorconfig 是否為最上層設定檔 – indent_style = space • 設定縮排的風格 ( space 或 tab ) – indent_size = 4 • 設定縮排的空白字元數 ( 僅 indent_style = space 時有用 ) – tab_width = 4 • 設定一個 tab 符號的寬度 – end_of_line = crlf • 設定斷行符號 ( cr , lf , crlf ) – charset = utf-8 • 設定檔案的文字編碼 ( latin1, utf-8, utf-16be, utf-16le ) – .NET Code Style Settings For Editorconfig
  22. 22. 已知的問題 (Known Issues) • EditorConfig 目前不支援 XML 檔案類型 (VS2017 RC) • 目前 XAML 編輯器支援 .editorconfig 以下選項: – indent_style – indent_size – tab_width • 目前 .editorconfig 不支援的選項: – insert_final_newline – trim_trailing_whitespace
  23. 23. 相關連結 • EditorConfig – EditorConfig – EditorConfig Plugins – EditorConfig (GitHub) – EditorConfig (@EditorConfig) | Twitter • 微軟文件 – Code Style Configuration in the VS2017 RC Update – Create portable, custom editor settings | Microsoft Docs • 相關文章 – Maintaining Consistent Coding Conventions With EditorConfig - Trey Hunner – Use EditorConfig to Maintain Consistent Coding Styles between Different Editors and IDEs
  24. 24. 漫遊擴充管理員 Roaming Extension Manager
  25. 25. 漫遊擴充管理員
  26. 26. 將擴充套件安裝於多台主機 • 適用於一個開發人員擁有多台開發環境 • 必須先登入 Visual Studio 2017 ( Microsoft 帳戶 ) • 漫遊擴充管理員 (Roaming Extension Manager) – 可將常用擴充套件設定「開始漫遊」
  27. 27. 漫遊擴充管理員圖示 • 標示為漫遊的擴充套件且尚未安裝 • 標示為漫遊的擴充套件且已經安裝 • 已安裝的套件,但沒有加入到漫遊清單中
  28. 28. 強大的 IntelliSense 與編輯器功能 Enhanced IntelliSense and Code Editor Features
  29. 29. 全新的 IntelliSense 功能增強 • IntelliSense 新增 Icon Tray 可篩選提示結果
  30. 30. 其他 C# / VB 編輯器功能增強 • 將檔案名稱更名為型別名稱 ( Ctrl+. ) • 將型別名稱更名為檔案名稱 ( Ctrl+. ) • 將 String.Format 轉換成 C# 6 的字串內插語法 • 在字串中間按下 Enter 斷行會自動拆成兩個字串 • 可把現有屬性 (Property) 自動轉成方法 (Method) • 使用程式碼導覽功能現在支援模糊比對能力 • 程式碼自動引用參考現在也支援模糊比對能力
  31. 31. 其他 JavaScript 編輯器功能增強 • 預設已啟用 JavaScript Language Service 能力 – 支援 React 常用的 JSX 語法 – 支援大部分 ES2016 語法 • generators • modules • decorators • …
  32. 32. 全新的偵錯能力 - Run to Click Run to Click
  33. 33. 減少設定中斷點的次數
  34. 34. 啟用與停用 [執行至所按處] • 執行至所按處 ( Run to Click )
  35. 35. 全新的例外狀況處理 Exceptional Exception Handling
  36. 36. 更清楚的 NullReferenceException • 可以在一個陳述式中點出確切的例外狀況
  37. 37. 設定例外發生時的中斷點條件
  38. 38. 即時單元測試開發 Live Unit Testing
  39. 39. 即時單元測試開發 (Live Unit Testing) • 主要特性 – 即時呈現單元測試結果與程式碼測試覆蓋率 – 僅支援於 Visual Studio 2017 企業版 – 支援 C# / VB 專案類型
  40. 40. Live Unit Testing 圖示 • 尚未被任何單元測試涵蓋 • 已涵蓋單元測試,但未通過 • 已涵蓋單元測試,且已通過
  41. 41. 內建支援三種單元測試框架 • 支援的單元測試框架與工具版本 – MSTest (Visual Studio Unit Testing Framework) • MSTest.TestAdapter 1.1.4-preview • MSTest.TestFramework 1.0.5-preview (or higher versions) – xUnit • xunit.runner.visualstudio version 2.2.0-beta3-build1187 • xunit 2.0 (or higher versions) – NUnit • NUnit3TestAdapter version 3.5.1 • NUnit version 3.5.0 (or higher versions)
  42. 42. 相關連結 • Live Unit Testing in Visual Studio 2017 RC • Unit Test Your Code • MSTest.exe command-line options
  43. 43. 即時相依性檢測 Live Dependency Validation
  44. 44. 啟用即時相依性檢測
  45. 45. 新增相依性驗證圖表 - 步驟 1 • [架構] / [新增相依性驗證圖表]
  46. 46. 新增相依性驗證圖表 - 步驟 2 • 新增 [相依性驗證] 專案
  47. 47. 新增相依性驗證圖表 - 步驟 3 • 更新專案中的 NuGet 套件以支援相依性驗證圖表
  48. 48. 新增相依性驗證圖表 - 步驟 4 • 設計相依性圖表 ( Layer Diagram )
  49. 49. 從錯誤清單視窗驗證架構相依性
  50. 50. 相依性驗證其實是個分析器 50
  51. 51. 相依性驗證圖表必須加入到專案中 • 在 *.csproj 專案檔中有個隱藏的專案項目 (方案總管看不見) • 沒有這個隱藏的專案項目就會出現以下錯誤 51
  52. 52. 相關連結 • Live Dependency Validation in Visual Studio 2017 | Microsoft Application Lifecycle Management • Live architecture dependency validation in Visual Studio "15" Preview 5 • UML Designers have been removed; Layer Designer now supports live architectural analysis
  53. 53. 輕量型解決方案載入 Lightweight Solution Load
  54. 54. 輕量型解決方案載入 • 主要用途 – 加快大型方案 (數十個專案) 的載入速度 – 大幅減少載入大型方案的記憶體耗用情況 • 注意事項 – 目前是實驗性功能, 預設不啟用! – 啟用時預設專案 不會自動還原 NuGet 套件
  55. 55. 載入速度比較
  56. 56. 啟用輕量型解決方案載入 (全域)
  57. 57. 啟用輕量型解決方案載入 (方案) • 啟用步驟 1. 在方案總管中點選方案 2. 按下 F4 開啟屬性視窗 3. 調整「輕量型載入」屬性
  58. 58. 相關連結 • Shorter Solution Load Time in Visual Studio "15" • Faster Visual Studio "15" Startup | The Visual Studio Blog
  59. 59. 聯絡資訊 • The Will Will Web 記載著 Will 在網路世界的學習心得與技術分享 – http://blog.miniasp.com/ • Will 保哥的技術交流中心 (臉書粉絲專頁) – http://www.facebook.com/will.fans • Will 保哥的噗浪 – http://www.plurk.com/willh/invite • Will 保哥的推特 – https://twitter.com/Will_Huang

×