《精讀 Mastering ABP Framework》教程發布

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

c93f42948513d5f4e7e09c574b69f3a6.png

掌握 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作為測試框架為應用程序構建單元測試和集成測試。還將學習自動化測試的基礎知識,如斷言、模擬數據和服務替換以及異常處理。

→→點擊下面原文鏈接直達→→

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281384.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281384.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281384.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C# 委托知識總結

1.什么是委托,為什么要使用委托 我正在埋頭苦寫程序,突然想喝水,但是又不想自己去掉杯水而打斷自己的思路,于是我就想讓女朋友去給我倒水。她去給我倒水,首先我得讓她知道我想讓她干什么,通知她之后我可以繼…

阿里云大學課程學習有獎征文活動現在開始

2019獨角獸企業重金招聘Python工程師標準>>> "學有所獲,分享為美"--阿里云大學課程學習有獎征文活動開始啦~~ 看課程,寫心得,贏千元大獎,還有機會加入阿里云大學技術作者群!想試試自己的技術文筆…

配置網絡測試環境的批處理

引言 有次需要測試 50 臺左右的設備,每個都要連上電腦并搭好測試環境。這種事當然用服務器下發配置最方便,但條件不允許哦,只得手工一臺臺設。 寫了個批處理配置腳本,放到 U 盤上,最好再配上 autorun.inf,嘿…

Android 的系統架構

Android 的系統架構和其它操作系統一樣,采用了分層的架構。android 分為四個層,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和 linux 核心層。 Android 是以 Linux 為核心的手機操作平臺,作為一款開放式的操作系統&#xf…

記一次 .NET 某制造業 MES 系統崩潰分析

一:背景 1.講故事前段時間有位朋友微信找到我,說他的程序偶爾會出現內存溢出崩潰,讓我幫忙看下是怎么回事,咨詢了下程序是 x86 部署,聽到這個詞其實心里已經有了數,不管怎么樣還是用 windbg 分析一下。二&a…

HTTPS協議開通,Apache服務器CSR簽名申請

登錄您的服務器終端 (SSH)。在命令提示符下,鍵入以下命令:openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr將 yourdomain 替換為您要保護的域名。例如,如果您的域名是 coolexample.com,您就…

首次公開!單日600PB的計算力--阿里巴巴EB級大數據平臺的進擊

摘要: 每年的雙11之前,也是MaxCompute各種乾坤大挪移落定的時候,因為雙11就是各種大折騰項目的自然deadline。在今年雙11之前,一路向北遷移和在離線混部項目,將杭州集群除螞蟻外整體遷移到張北,涉及了絕大部…

軟件測試金字塔

軟件測試金字塔 在敏捷方法中,持續集成是其基石,持續集成的核心是自動化測試。下面這篇關于測試金字塔的文章,來自大師Martin Fowler。 測試金字塔的概念來自Mike Cohn,在他的書Succeeding With Agile中有詳細描述:測試…

使用pm2守護你的.NET Core應用程序

簡介PM2是常用的node進程管理工具,它可以提供node.js應用管理,如自動重載、性能監控、負載均衡等。同類工具有Supervisor、Forever等。pm2是一個進程管理工具,可以用它來管理你的node進程,并查看node進程的狀態,當然也支持性能監控…

C-指針02 2017/11/24

/* 復習 1.指針類型 int *指針類型 指針指向的變量類型指針指向哪個變量2.基本數據類型 4種指針類型 存放的地址 和系統有關系 4個字節數組類型結構體 枚舉 聯合3.指針加法減法 p 和數組搭配使用4.兩個運算符 *取值(解引用) &取地址5. *(pi) p[i] …

程序員搞笑段子

轉載于:https://www.cnblogs.com/Zhusi/p/10083474.html

學習之旅——工作記錄日志2017.7.09

1.例子:在dev_lala上開發完畢后,切換到dev分支,在此分支上pull最新的代碼來保證dev上的代碼是最新的。在dev分支上git branch -b haha一個新的分支haha, 用git log dev_lala查看提交記錄,將我自己的幾個記錄加到haha分…

Git常用命令與基本操作

Git操作指令系統配置基本命令獲取/刪除Git倉庫更新記錄撤銷操作遠程倉庫的使用分支系統系統配置 git config 為系統自帶的配置指令,它可以控制GIT的行為和外觀 配置用戶信息 git config --global user.name "John Doe" git config --global user.email …

CA周記 - 在 Azure ML 上用 .NET 跑機器學習

.NET 是一個跨平臺,全場景應用的開源技術。你有在用 .NET 做機器學習/深度學習的應用嗎?如果從框架角度,ML.NET / Tensorflow.NET / 不斷在進步的 TorchSharp 通過幾年的發展已經開始穩定,但如果在一些大型項目上,特別…

iOS10 優化APP首次安裝網絡權限提示方案

我剛經歷了一場末日(停電),特別是在你想寫文檔的時候。。。 言歸正傳,今天的問題是解決iOS10系統下首次按鈕APP彈出的網絡權限提示所帶來了問題以及優化。 起因 查了相關文章知道由于大陸工信部出臺的新規指出,應用在未…

su命令

從一個用戶切換到另一個用戶:su - ceshi(ceshi是用戶名) 查看當前用戶:whoami 在不切換用戶的情況執行另一個用戶的命令:例:su - -c "touch /tmp/111.txt" admin 若用戶沒有加目錄需要添加家目錄,并更改所有…

C語言基礎知識【數據類型】

C 數據類型1.在 C 語言中,數據類型指的是用于聲明不同類型的變量或函數的一個廣泛的系統。變量的類型決定了變量存儲占用的空間,以及如何解釋存儲的位模式。2.C 中的類型可分為以下幾種:序號 類型與描述1 基本類型:它們是算…

PS批量替換內容

在制作圖片物料的時候,有時會碰到需要制作大量內容格式一致,但部分文字或圖片不同的圖片,這里我們使用PS的變量功能 物料準備:準備好需要替換的圖片和文字,使用excel制作出需要替換的內容,第一行name和pic…

在 .NET 中執行 JavaScript 代碼

你好,這里是 Dotnet 工具箱,定期分享 Dotnet 有趣,實用的工具和組件,希望對您有用!Jint 簡介如果您想在您的 .NET 程序中使用 Javascript,那么我推薦您使用 Jint。Jint 是適用于 .NET 的 開源 Javascript 解…

【本周面試題】第5周 - 開發工具相關

待整理轉載于:https://www.cnblogs.com/padding1015/p/10095424.html