温故知新,遇见ABP vNext开源应用程序框架,基于领域驱动设计(DDD)的最佳实践结构模型

ABP的前生今世

什么是ABP(ASP.NET Boilerplate Project)

https://abp.io
https://github.com/abpframework/abp

ABP是用于创建现代Web应用程序的完整架构和强大的基础设施! 遵循最佳实践和约定,为你提供SOLID开发经验。

ABP(ASP.NET Boilerplate Project),中文翻译为"ASP.NET样板项目",是一个开源且文档友好的应用程序框架。ABP不仅仅是一个框架,它还提供了一个最徍实践的基于领域驱动设计(DDD)的体系结构模型,可以支持.Net framework.Net Core两种技术流派。

领域驱动设计(DDD, Domain-Driven Design)是一种通过将实现连接到持续进化的模型来满足复杂需求的软件开发方法。

image

ABP是基于最新的ASP.NET COREASP.NET MVCWeb API技术的应用程序框架。并使用流行的框架和库,它提供了便于使用的授权,依赖注入,验证,异常处理,本地化,日志记录,缓存等常用功能。

ABP实现了多层架构(领域层,应用层,基础设施层和表示层),以及领域驱动设计(实体,存储库,领域服务,应用程序服务,DTO等)。

什么是ABP vNext

ABP vNextASP.NET Boilerplate Project基于.Net Core的全新重构版本,称为ABP,其前身是ASP.NET Boilerplate Project,其与ASP.NET Boilerplate Project的关系类似于.Net Core.Net Framework的关系。

ABP vNext将不支持ASP.NET MVC 5.x,、Entity Framework 6.x和其他ASP.NET传统技术。

image

如张善友老师所言:

在.NET社区里一直有声音是期望有一个Spring Boot这样的项目,现在我可以告诉大家ABP vNext可以媲美Spring Boot这样的项目,ABP vNext融合了大量.NET社区的开源项目,让你在开发项目的过程中选择不同的开源项目组合起来,大大降低你使用相关开源项目的门槛,最明显的例子就是Identity Server4Identity Server 4是一个OpenID Connect规范实现的开源框架,它还无法做到开箱即用这样的一个层度,那么ABP vNextIdentity Server 4封装成一个Identity Server模块,你就可以做到开箱即用。

其他同类型项目还包括:

ABP vNext社区

https://easyabp.io
https://github.com/easyabp

由一群官方以外的使用者形成的社区,尤其是以国内的小伙伴为主。

image

在空间https://github.com/EasyAbp/awesome-abp 还汇聚了学习和使用Abp的相关资源。

ABP.IO平台

之前只有开源的ASP.NET Boilerplate Project项目,后面有了Abp商业版,以及ASP.NET Zero,ABP.IO平台包括开源ABP框架和ABP商业版。

image

ABP商业版(ABP Commercial)

https://commercial.abp.io

ABP商业版(ABP Commercial)基于ABP框架, 这是一个开源和社区驱动的ASP.NET Core Web应用程序开发框架,ABP商业版提供所有现代企业级基于ASP.NET Core的解决方案所需要的基础设施。从设计到部署,整个开发生命周期都由ABP的内置功能和模块提供支持。

image

ABP商业版不是付费版本的ABP框架,可以把它当作为专业公司提供的附加套餐,你可以用它来节省时间和更快地开发产品,一个原则是,我们创建的主要基础设施作为开源产品, 然后销售额外的预制应用程序功能,主题和工具.类似于ASP.NET BoilerplateASP.NET Zero产品,购买商业版许可极大地节省你的时间和精力,你可以专注于自己的业务,此外也可获得专门的和优先的支持.同时,你也在支持ABP核心团队,因为我们花了大部分时间来开发,维护和支持开源的ABP框架。

image

ASP.NET Zero

https://www.aspnetzero.com

ASP.NET Zero是利用ABP框架搭建的模板项目,它会提供预建的页面及强大的基础设施架构。利用它提供的基础框架代码能让你快速的开发你的应用层。

image

参考

posted @ 2021-07-24 16:02  TaylorShi  阅读(880)  评论(0编辑  收藏  举报