Course Image
Course Image

C# 開發實戰:非同步程式開發技巧

課程說明

在現代軟體開發中,非同步程式設計已成為不可或缺的核心技能。隨著多核心處理器與分散式系統的普及,非同步設計模式已成為提高效能與可擴展性的關鍵手段。以 .NET 為例,async/await 已經深入整個開發生態系統,無論是 ASP.NET Core 或其他框架,都將其視為一等公民。

在 2024 年,對 C# 開發者來說,掌握非同步程式設計不僅是加速應用程式的關鍵,更是避免潛在問題的重要能力。本課程將全面介紹 C# 非同步程式設計的核心觀念與實務技巧。我們將深入探索 TAP(基於 Task 的非同步模式),並透過實作與案例研究,讓學員掌握如何運用 Task 進行高效能的非同步操作,解決常見的開發挑戰。課程設計將引導學員逐步降低非同步設計的複雜度,確保學員能夠自信地在專案中運用這項技術。

本課程經過全面的翻新,加入了許多 C# 8.0 (.NET Core 1.0) 之後才新增的語言特性。如果你只會基本的 async/await 語法,卻不瞭解其內部深奧的特性與原理,那麼這堂課就是為你準備的。相信在熟悉這些非同步的核心概念之後,你將能夠更深入理解 C# 的非同步模型,並有效應用於實際專案中,並深入理解在不同專案中的最佳實踐,我們將全面涵蓋各種現代非同步開發技巧,讓你在面對高併發需求時,能夠應對自如,從容掌控。無論你是新手還是資深開發者,這門課程都將助你在非同步程式設計上達到新的高度。

課程特色

  • 提供專屬 Discord 頻道,課後持續交流與學習,打造長效社群
  • 課程提供 3 個月內可免費無限次重播!

課程主題

  • 建立非同步的重要觀念
    • 非同步程式設計的重要性
    • 為什麼需要非同步程式設計
    • 典型的非同步作業應用場景
    • 認識非同步的計算機原理
    • 關於非同步的重要名詞介紹
  • 新手上路非同步開發
    • 認識 .NET 的平行程式設計架構
    • 認識非同步程式設計模式 (APM, EAP, TAP)
    • 認識資源競爭與執行緒安全 (Thread Safety)
    • 理解同步處理 (Synchronization)
    • 非同步程式設計的注意要點
  • 深入 TAP 非同步開發模式
    • 什麼是 Task (工作)
    • 理解 Thread 與 Task 處理非同步的差異
    • 理解前景執行緒與背景執行緒特性
    • Task 與 async/await 的關係
    • Task 的 4 種用法
    • Task 的 9 種使用情境
    • Task 的產生、啟動、傳入參數
    • Task 狀態與 Task 結果
    • Task 等候結束與接續工作
    • Task 取消的設計方法
    • Task 例外處理與偵錯技巧
    • 取得 Task 的執行進度
  • 進階非同步程式設計
    • 理解 async/await 的內部細節
    • 理解 SynchronizationContext (同步內容)
    • 理解 Thread 發生 Deadlock (死結) 的成因與解法
    • 理解 Asynchronous Locks 非同步鎖定的應用場景
    • 理解 Fire and Forget (射後不理) 的正確用法
    • 理解 Task 和 ValueTask 的應用場景
  • 非同步程式設計最佳實務
    • 設計 Task 非同步方法的技巧
      • CPU Bound 的非同步工作的設計方法
      • I/O Bound 的非同步工作的設計方法
    • 非同步與平行處理的差異與最佳應用場景
    • 非同步與平行處理的混合應用
  • 其他非同步議題
    • 理解 Asynchronous Coroutines
    • 理解 Asynchronous Streams
    • 理解 Asynchronous LINQ

適合對象

  • 具有 C# 一年以上開發經驗
  • 對非同步開發有興趣的 .NET 開發人員
  • 非常適合使用 .NET / ASP.NET Core 的開發人員
  • 非常適合 WPF / Windows Forms 開發人員

預期效益

  • 了解什麼是非同步程式設計
  • 瞭解非同步程式設計的計算機原理
  • 了解 .NET 不同的非同步設計方法
  • 學會如何正確的設計 Task 非同步方法
  • 瞭解各種非同步程式設計最佳實務
  • 解答所有 async / await 相關疑問

講者簡歷

多奇數位創意有限公司 技術總監 Will 保哥

  • 2024 年獲選 ML/Gen AI (Google Developer Expert) 谷歌開發專家
  • 2019 年獲選 Microsoft Regional Director (RD) 微軟技術社群區域總監
  • 2018 年榮獲 Angular/Web GDE (Google Developer Expert) 谷歌開發專家
  • 2008 至今連續 17 度當選 Microsoft MVP 微軟最有價值專家 (Developer Technologies)。
  • 2013 年曾獲選第 6 屆iT邦幫忙鐵人賽【iT邦幫忙鐵人賽年度大獎】、【開發技術組年度鐵人】、【iT邦幫忙鐵人賽優選】三項殊榮。
  • 熟悉 Angular、JavaScript、.NET、C#、ASP.NET MVC、Go、Docker、Kubernetes 相關技術。擅長 DevOps 與組織文化建立、軟體團隊建構與管理。
  • 曾擔任 Visual Studio 2010 上市發表會講師、MSDN 講座講師、TechDays Taiwan 2010~2015 講師、TechEd China 2011, 2013 講師。
  • 出版著作有 ASP.NET MVC 2 開發實戰、Windows Phone 開發實戰、ASP.NET MVC 4 開發實戰等書籍。
  • 部落格: http://blog.miniasp.com/
  • 粉絲頁: https://www.facebook.com/will.fans
C# 開發實戰:非同步程式開發技巧

NT$ 4,500

購買課程
C# 開發實戰:非同步程式開發技巧

NT$ 4,500