精讀《Mastering ABP Framework》學習總結,掌握軟件開發最佳實踐,構建可維護 .NET 解決方案。從 ABP Framework 框架中學習如何構建現代 WEB 應用程序。

掌握 ABP Framework 框架
ABP Framework 是一個完整的基礎架構,遵循軟件開發最佳實踐,用于構建現代 WEB 應用程序。ABP Framework 通過提供框架和生態系統,來幫助你在開發過程中實踐DRY原則(不要重復自己),并專注于業務代碼開發。
本教程將幫助你從零開始全面了解 ABP Framework 和現代 WEB 應用程序開發技術。通過對基本概念和實際示例的逐步解釋,了解現代 WEB 解決方案的要求以及 ABP Framework 如何幫助你輕松愉快地開發自己的解決方案。你將發現企業 WEB 應用程序開發的常見需求,并探索 ABP Framework 所提供的基礎設施。
在本教程中,將掌握用于構建可維護和模塊化 Web 解決方案的軟件開發最佳實踐。學習完,將能夠創建一個易于開發、維護和測試的完整 WEB 解決方案。
課程目標
??掌握使用 ABP Framework 框架中的最佳工具構建強大、可維護和可擴展的軟件解決方案
??掌握在應用程序中實施 SOLID 原則和領域驅動設計
??掌握使用 ABP Framework 框架構建可維護的模塊化解決方案
將會學到什么?
??設置開發環境并開始使用 ABP Framework
??使用 Entity Framework Core 和 MongoDB 開發數據訪問層
??了解橫切關注點及其作用
??掌握使用 ABP Framework 實現領域驅動設計
??使用 ASP.NET Core MVC(Razor Pages)和 Blazor 構建 UI
??使用多租戶系統創建模塊化 WEB 應用程序
??使用 ABP Framework 編寫單元測試、集成測試以及 UI測試
為誰而寫?
希望學習軟件架構和最佳實踐的軟件開發人員,使用 .NET 技術和 ABP Framework 構建可維護WEB解決方案。須具備 C# 和 ASP.NET Core 基礎知識。
內容結構
第一部分:ABP Framework 簡介
第1章 現代軟件開發和 ABP Framework,討論了開發企業級應用程序的常見挑戰,并解釋了ABP Framework如何解決這些挑戰。
第2章 開始使用 ABP Framework,解釋了如何用 ABP Framework 創建和運行一個新的解決方案。
第3章 一步一步進行項目開發,是本教程最長的一章,通過一個應用實例展示使用 ABP Framework 開發的完整過程。在這一章之后,我們將掌握 ABP Framework 創建應用程序整體框架,并在之后的章節中詳細解釋具體的細節內容。
第4章 理解 EventHub 示例解決方案,解釋 EventHub 解決方案的架構和結構,該項目是為本教程讀者創建的一個大型的真實的示例應用程序。
第二部分:ABP Framework 基礎設施
第5章 探索 ASP.NET Core 和 ABP Framework 基礎設施,解釋基本概念,如依賴注入、模塊化、配置和日志。這些主題對于理解用 ABP Framework 和 ASP.NET Core 進行開發至關重要。
第6章 使用數據訪問基礎設施,介紹實體、倉儲和工作單元的概念,并展示了如何與 Entity Framework Core 和 MongoDB 集成,學習查詢和操作數據以及控制數據庫事務的不同方法。
第7章 探索橫切關注點,應用中的三個重要關注點:授權、驗證和異常處理。學習如何定義和使用基于權限的授權系統,驗證用戶輸入,以及處理異常和異常消息。
第8章 ABP功能和服務,涵蓋ABP常用功能,如使用當前用戶,使用數據過濾和審計日志系統,緩存數據,以及本地化用戶界面。
第三部分:實現領域驅動設計
在這一部分中,聚焦領域驅動設計。開始學習DDD理論知識,然后基于 ABP Framework 實現領域驅動設計,演示和分析具體的規則和示例。
第9章 理解領域驅動設計,是DDD相關章節的第一部分。它首先定義了DDD,并基于DDD構建了一個.NET解決方案。你將了解到ABP的啟動模板是如何從DDD的標準四層解決方案模型演化而來的。你還將了解到DDD的構建模塊和原則。
第10章 DDD:領域層,繼續研究DDD的領域層。首先解釋了 EventHub 領域對象,因為本章和下一章的例子都基于這些對象。將學習如何設計聚合體;實現領域服務、倉儲和規約;以及使用事件總線來發布領域事件。
第11章 DDD:應用層,重點是應用層。學習設計和驗證數據傳輸對象以及實現應用服務的最佳實踐。在本章中還會討論領域層和應用層的職責。
為什么該部分 DDD 沒有包含展示層和基礎設施層介紹?在領域驅動設計中,領域層和應用層相對穩定,也是DDD架構的核心。展示層技術和基礎設層技術可以根據技術選型,有多種不同的實現。展示層是第4部分內容,分別介紹了使用 MVC Razor Pages 和 Blazor WebAssembly UI 技術;基礎設施層在第6章,分別介紹Entity Framework Core 集成和MongoDB集成。
第四部分:用戶界面和API開發
第12章 使用 MVC Razor Pages,在服務器端開發MVC Razor Pages 應用程序。將了解 ABP Framework 中的主題系統(Theme),學習用戶界面展示技術,如靜態資源捆綁和壓縮、標簽助手(TagHelper)、表單、菜單和模態框。還將學習如何進行客戶端到服務器端的API調用,并使用 ABP Framework 提供的 JavaScript API來顯示通知、消息框等。
第13章 使用 Blazor WebAssembly UI,與前一章類似,解釋了使用微軟 Blazor SPA 框架和ABP Framework 進行UI開發。Blazor是一個很好的框架,開發者可以在瀏覽器中使用他們現有的.NET技能。ABP為調用HTTP APIs提供內置的解決方案,實現主題化,并提供實用的服務,使常見的UI任務變得更加容易,從而使開發更快一步。
第14章 構建 HTTP APIs 和實時服務,解釋了如何用常規 ASP.NET 方法創建API控制器以及ABP Framework 自動API控制器系統,并討論了何時需要手動定義控制器。在這一章中,還將學習動態和靜態的C#代理,以便從.NET客戶端到基于ABP Framework的HTTP服務中自動進行客戶端到服務器的API調用。這一章還包括使用SignalR與ABP Framework的整合。
第五部分:其他
第15章 模塊化開發,用一個例子解釋了可重用的應用程序模塊化開發。我們將為 EventHub 解決方案創建一個支付模塊,并在本章中解釋該模塊的結構。通過這種方式,讓您了解如何開發可重用模塊并將它們安裝到應用程序中。
第16章 實現多租戶,多租戶是一種構建軟件即服務(SaaS)解決方案的架構模式。首先學習多租戶架構模式使用場景,是否適合您的解決方案,然后學習如何開發與ABP的多租戶系統兼容的代碼。本章還介紹了ABP的特性系統,該系統用于將應用程序功能定義為特性,并在多租戶解決方案中將它們分配給租戶。
第17章 構建自動化測試,解釋了 ABP Framework 提供的自動化測試基礎設施,以及如何使用xUnit作為測試框架為應用程序構建單元測試和集成測試。還將學習自動化測試的基礎知識,如斷言、模擬數據和服務替換以及異常處理。
→→點擊下面原文鏈接直達→→