Hello,大家好,最近项目要求,决定采用ABP,为此专门研究了下,并且成功搭建项目框架并应用于项目开发,决定写一个系列技术分享,希望有更多的同行可以技术互动;今天主要以ABP框架的简介、ABP框架应用场景、搭建并使用ABP框架需要的知识储备、技术储备、环境要求、ABP框架API展示、Swagger简单应用这几方面来技术分享,喜欢的小伙伴记得关注互动哦。
ABP框架的简介
ABP框架全称为“ASP.NET Boilerplate Project”,中文翻译为“ ASP.NET样板项目”,ASP.NET Boilerplate是一个通用应用程序框架,专门为新的现代Web应用程序设计。它使用已经熟悉的工具并围绕它们实施最佳实践,以提供SOLID开发经验。诞生的主要目的就是为了让.NET程序员“秒变”架构师,将.NET企业级项目的主流开发技术、最先进的架构整合起来,让.NET工程师能够更快的开发出更好的项目;提出了分层架构、模块化设计、多租户、域驱动设计等设计理念,提供了更全面的开发文档、入门教程、免费和开源的代码(可以在GitHub上获取项目源码)。
ABP官方网站:
http://www.aspnetboilerplate.com/ (注:开发项目需从官网生成框架源码,从而在VS中载入框架项目文件)。
ABP GitHub源码地址:
https://github.com/aspnetboilerplate。
ASP.NET Boilerplate 基于DDD的经典分层架构思想,实现了众多DDD的概念。
搭建并使用ABP框架需要的知识储备、技术储备、环境要求
开发环境要求(Windows为例):Win10操作系统,Visual Studio 以上(我使用VS2019),SQL Server 以上,.net sdk 以上(我使用CORE3.1)。
知识储备、技术储备(3年以上工作经验最好):
1、MVC 5、WEB API、.NET Core3.1(最少)需要熟悉;
2、领域驱动设计,如实体、仓储、领域服务、领域事件、应用服务、数据传输对象、工作单元等,这方面在CORE 里面体现比较多。
3、分层体系结构:基础设施层 -> 领域层 -> 应用层 -> 展现层。
4、前端开发框架(JavaScript、jQuery、Bootstrap、Less、AngularJs、Modernizr、jQuery.validate、jQuery.form、jQuery.blockUI、json2、Vue、NodeJs、React等)。
5、熟悉Entity Framework,对数据迁移有研究。
6、模块化开发理念,每个模块可单独指定数据库,拥有独立的EF DbContext。
7、有统一异常处理理念。
8、方法的参数有效性认证理念。
9、拥有API(Application Programming Interface 应用程序接口)理念。
、配置文件操作理念、JSON操作。
、身份验证、授权管理等理念。
、前后端分离设计理念。
ABP框架API展示
上述就是ABP框架搭建的,基于Swagger工具显示,至于Swagger的使用以及原理我下次专门写,随后在分享框架搭建以及容易出现的坑,分享给你们,感兴趣的记得互动哦,需要框架源码的可以关注我私信发给你。