前言

ABP框架是一个完整的基础框架,用于通过遵循软件开发的最佳实践和惯例来创建现代Web应用程序。ABP提供了一个高级框架和生态系统,以帮助您实施“不要重复自己”(DRY)原则并专注于您的业务代码。

本书由ABP框架的创建者撰写, 将帮助您从头开始全面了解ABP框架和现代Web应用程序开发技术。通过对基本概念和实例的分步解释, 您将了解现代Web解决方案的要求, 以及ABP框架如何使开发自己的解决方案变得愉快。您将发现企业Web应用开发的常见需求,并探索ABP提供的基础框架。在整本书中,您将掌握构建可维护和模块化 Web 解决方案的软件开发最佳实践。

在本书结束时,您将能够创建一个完整的 Web 解决方案,该解决方案易于开发、维护和测试。

这本书是给谁看的

本书适用于想要学习软件架构和最佳实践的Web开发人员,以使用Microsoft技术和ABP框架构建可维护的基于Web的解决方案。要开始阅读本书,C# 和 ASP.NET Core 的基本知识是必要的。

本书涵盖的内容

第1章, 现代软件开发和ABP框架, 讨论了开发业务应用程序的常见挑战, 并解释了ABP如何应对这些挑战。

第2章, ABP框架入门, 介绍如何使用ABP框架创建和运行新的解决方案。

第 3 章, 循序渐进的应用程序开发, 是本书最长的一章, 展示了使用 ABP 框架进行应用程序开发,并提供了广泛的示例应用程序。这是将所有内容放在一起的主要章节。在本章之后, 您可能不了解所有 ABP 功能, 但将能够使用基本的 ABP 概念创建自己的应用程序。通过本章您将了解 ABP 框架概况,并且可以在接下来的章节中了解所有细节。

第 4 章 “了解示例解决方案”介绍了示例解决方案 EventHub 的体系结构和结构,该解决方案是作为本书读者的大型示例应用程序创建的。建议您阅读本章,并使解决方案在您的环境中正常工作。

第 5 章,探索 ASP.NET Core 和 ABP 基础设施,解释了一些基本概念,例如依赖注入、基本模块化、配置和日志记录。这些主题对于理解ABP和 ASP.NET Core的开发至关重要。

第 6 章 “使用数据访问基础结构”介绍了实体、存储库和工作单元概念,并演示了如何使用 Entity Framework Core 和 MongoDB。您将学习查询和操作数据以及控制数据库事务的不同方法。

第 7 章“探索跨领域关注点”重点介绍了应用程序中需要的三个重要关注点:授权、验证和异常处理。这些问题在应用程序的每个部分都实现了。您将学习如何定义和使用基于权限的授权系统、验证用户输入以及处理异常和异常消息。

第8章, 使用ABP的功能和服务, 介绍一些常用的ABP功能, 如与当前用户管理, 使用数据过滤和审计日志系统, 缓存数据, 以及本地化用户界面。

第 9 章“理解领域驱动设计”是 DDD 相关章节的第一部分。它首先定义 DDD 并构建基于 DDD 的 .NET 解决方案。您将了解 ABP 的启动模板是如何从 DDD 的标准四层解决方案模型演变而来的.您还将了解 DDD 的构建块和原理。

第 10 章 DDD – 域层,继续研究域层的 DDD。本文首先介绍 EventHub 域对象,因为本章和下一章中的示例将基于这些对象。您将学习如何设计聚合;实施域服务、存储库和规范;并使用事件总线发布域事件。

第 11 章 DDD – 应用层重点介绍应用层。您将学习设计和验证数据传输对象以及实现应用程序服务的最佳实践。您还将在本章中找到讨论和示例,以帮助您了解域层和应用程序层的职责。

第 12 章 “使用 MVC/Razor Pages”,介绍如何开发在服务器端生成 HTML 的 MVC(Razor Pages)应用程序。您将了解 ABP 的主题方法,并了解捆绑和缩小、标签助手、表单、菜单和模态等基本方面。您还将学习如何进行客户端到服务器的API调用,并使用ABP框架提供的JavaScript实用程序API来显示通知, 消息框等。

第 13 章,使用 Blazor WebAssembly UI,与上一章类似,介绍了使用 Microsoft 的新 Blazor SPA 框架和 ABP 框架进行 UI 开发。Blazor 是一个很好的框架,可供开发人员在浏览器中使用其现有的 .NET 技能。ABP更进一步,提供了用于使用HTTP API的内置解决方案, 实现主题, 并提供实用程序服务,使常见的UI任务更容易。

第14章, 构建HTTP API和实时服务, 解释了如何使用经典的 ASP.NET 方法和ABP的自动API控制器系统创建API控制器, 并讨论了何时需要手动定义控制器.在本章中,您还将了解动态和静态 C# 代理,以自动执行从 .NET 客户端到基于 ABP 的 HTTP 服务的客户端到服务器 API 调用.本章还介绍了如何将 SignalR 与 ABP 框架配合使用.

第 15 章 “使用模块化”,通过一个示例案例解释了可重用的应用程序模块开发。我们将为 EventHub 解决方案创建一个支付模块,并在本章中解释该模块的结构。通过这种方式,您将了解如何开发可重用的模块并将其安装在应用程序中。

第 16 章,实施多租户,重点介绍另一个基本的 ABP 架构,多租户,这是一种构建软件即服务 (SaaS) 解决方案的架构模式。您将了解多租户是否适合您的解决方案,并学习如何开发代码以与 ABP 的多租户系统兼容.本章还介绍了ABP的功能系统, 该系统用于将应用程序功能定义为功能,并将其分配给多租户解决方案中的租户.

第17章, 构建自动化测试, 解释ABP的测试基础设施, 以及如何使用xUnit作为测试框架为您的应用程序构建单元和集成测试.您还将学习自动化测试的基础知识,例如断言、模拟和替换服务以及处理异常。

下载示例代码文档

您可以从 GitHub 下载本书的示例代码文档,网址为 https://github.com/PacktPublishing/Mastering-ABP-Framework。如果代码有更新,它将在 GitHub 存储库中更新。

我们还从我们丰富的书籍和视频目录中提供了其他代码包,网址为 https://github.com/PacktPublishing/。快来看看吧!

下载彩色图像

我们还提供了一个 PDF 文档,其中包含本书中使用的屏幕截图和图表的彩色图像。您可以在此处下载:https://static.packt-cdn.com/downloads/9781801079242_ColorImages.pdf。

 

posted on 2024-06-06 16:30  生活的倒影  阅读(33)  评论(0编辑  收藏  举报