《实现领域驱动设计》

—— 基于 ABP Framework 实现领域驱动设计实用指南

翻译缘由

自 ABP vNext 1.0 开始学习和使用该框架,被其优雅的设计和实现吸引,适逢 ABP Framework 4.3 版本发布,官网将实现DDD部分的帮助文档,整理成电子书《Implementing Domain Driven Design》 发布,标志着ABP对DDD开发支持趋于完善。

参看照英文版电子书,基于对该框架的理解,边学边译,希望让更多人了解、学习和掌握 ABP Framework,为该优秀的开源项目,贡献绵薄之力。

英文版电子书需要注册或发送邮件下载,不想注册的朋友可加 ABP Framework 研习社-QQ群:726299208 共享文件中查找:Implementing_Domain_Driven_Design_V1.0.pdf 直接下载。

译者简介

  • 网名:iEricLee
  • 博客:编程悟道 以码传心,以软制道,知行合一!
  • 个人QQ:2900571998(用于技术合作、项目开发、企业培训等事项沟通,其他勿扰!)

小结:要解决的问题

对于大多数开发者,苦于学习了DDD开发的理论和指导原则,却在项目或代码层面没有与DDD理论相配套的支持框架,这一点成为很多开发者实施DDD的障碍。

DDD落地实用指南,有助于更好地理解 ABP Framework 和更好地实现 DDD。译者在以前使用 ABP Framework 时的一些疑惑和问题,也在学习过程中豁然开朗。

需要说明的是:

  1. 本书侧重DDD实现的最佳实践和原则,完整的DDD理论学习可以补充阅读参考书。

  2. 这是一份实施领域驱动设计(DDD)的实用指南。虽然实施细节是基于 ABP Framework 基础设施,但基本概念、原则和模式可以应用于任何解决方案

内容:系列文章

2021.6.28 第一版,翻译已完结!相信随着ABP框架开发进度,应该还会有更多的最佳实践在第二版中推出,期待!

  • 作者: Halil Ibrahim Kalkan
  • 发布时间: 六月, 2021 (第一版)
  • 页数: 109

接下来会做什么

翻译完这部文档,总觉得不是特别过瘾、尽兴,ABP Framework提供了非常多实用功能,是一个大宝藏,接下来会挑选常用模块,从应用到源码分析!这将会是另一个ABP Framework系列:应用和源码剖析系列,既能快速上手,又深入源码理解底层原理!

学习帮助

为了更好地帮助大家在使用ABP框架实践DDD开发过程中,遇到问题时,讨论、交流!创建 ABP Framework 研习社(QQ群:726299208)

专注 ABP Framework 技术分析、讨论交流、资料共享、示例源码等,欢迎加入!

![image](https://img2020.cnblogs.com/blog/154183/202106/

基于ABP落地领域驱动设计-00.目录和小结的更多相关文章

  1. 基于ABP落地领域驱动设计-04.领域服务和应用服务的最佳实践和原则

    目录 系列文章 领域服务 应用服务 学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落地领域驱动设计-02.聚合和聚合根的最佳实践 ...

  2. 基于ABP落地领域驱动设计-05.实体创建和更新最佳实践

    目录 系列文章 数据传输对象 输入DTO最佳实践 不要在输入DTO中定义不使用的属性 不要重用输入DTO 输入DTO中验证逻辑 输出DTO最佳实践 对象映射 学习帮助 系列文章 基于ABP落地领域驱动 ...

  3. 基于ABP落地领域驱动设计-06.正确区分领域逻辑和应用逻辑

    目录 系列文章 领域逻辑和应用逻辑 多应用层 示例:正确区分应用逻辑和领域逻辑 学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落 ...

  4. 基于ABP落地领域驱动设计-02.聚合和聚合根的最佳实践和原则

    目录 前言 聚合 聚合和聚合根原则 包含业务原则 单个单元原则 事务边界原则 可序列化原则 聚合和聚合根最佳实践 只通过ID引用其他聚合 用于 EF Core 和 关系型数据库 保持聚合根足够小 聚合 ...

  5. 基于ABP落地领域驱动设计-03.仓储和规约最佳实践和原则

    目录 系列文章 仓储 仓储的通用原则 仓储中不包含领域逻辑 规约 在实体中使用规约 在仓储中使用规约 组合规约 学习帮助 围绕DDD和ABP Framework两个核心技术,后面还会陆续发布核心构件实 ...

  6. 基于ABP落地领域驱动设计-01.全景图

    什么是领域驱动设计? 领域驱动设计(简称:DDD)是一种针对复杂需求的软件开发方法.将软件实现与不断发展的模型联系起来,专注于核心领域逻辑,而不是基础设施细节.DDD适用于复杂领域和大规模应用,而不是 ...

  7. 基于领域驱动设计(DDD)超轻量级快速开发架构

    smartadmin.core.urf 这个项目是基于asp.net core 3.1(最新)基础上参照领域驱动设计(DDD)的理念,并参考目前最为了流行的abp架构开发的一套轻量级的快速开发web ...

  8. Java开发架构篇《初识领域驱动设计DDD落地》

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 DDD(Domain-Driven Design 领域驱动设计)是由Eric Eva ...

  9. 基于领域驱动设计(DDD)超轻量级快速开发架构(二)动态linq查询的实现方式

    -之动态查询,查询逻辑封装复用 基于领域驱动设计(DDD)超轻量级快速开发架构详细介绍请看 https://www.cnblogs.com/neozhu/p/13174234.html 需求 配合Ea ...

随机推荐

  1. base64stego 还不懂base64的隐写,详解15行代码带你领略

    网上写了好多关于xctf MISC新手篇的base64Stego隐写的教程,但大都不太清楚,基本上都是讲了一段隐写原理,直接上代码了.但是代码是这道题的关键,代码讲了如何解码这个隐写的完整流程,这次我 ...

  2. ES6学习-3 const

    const声明一个只读的常量.一旦声明,常量的值就不能改变,所以在声名时就进行赋值. const的作用域与let命令相同,只在声明所在的块级作用域内有效. const命令声明的常量,同样存在暂时性死区 ...

  3. 分布式日志传输系统Databus(一)--系统介绍

    Databus系统是微博DIP团队开源的分布式日志传输系统.它是一个分布式.高可用的,用于采集和移动大量日志数据的服务.它基于流式数据的简单而灵活的架构,具备健壮性和容错性,具有故障转移与恢复机制.它 ...

  4. ES6中的展开运算符和解构对象

    let obj = { a:1 b:2 } let obj2 = { ...obj c:3 d:4 } console.log(obj2)//1,2,3,4,对象展开 //常考题目 let a = 1 ...

  5. golang:指针理解总结

    指针的定义 指针是一个代表着某个内存地址的值.这个内存地址往往是在内存中存储的另一个变量的值的起始位置. go指针是提供操作数据的基本桥梁.因为go很多调用,往往复制一份对象,例如函数的参数,如果没有 ...

  6. [刷题] PTA 02-线性结构4 Pop Sequence

    模拟栈进出 方法一: 1 #include<stdio.h> 2 #define MAXSIZE 1000 3 4 typedef struct{ 5 int data[MAXSIZE]; ...

  7. keepalived的脑裂问题与解决

    Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工 ...

  8. 2.5if语句

    判断(if)语句 目标 开发中的应用场景 if 语句体验 if 语句进阶 综合应用 01. 开发中的应用场景 生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这样?如果那样?-- 程序 ...

  9. 『动善时』JMeter基础 — 25、JMeter参数化补充练习

    目录 1.使用"CSV数据文件设置"组件实现参数化 (1)测试计划中的元件 (2)数据文件内容 (3)线程组元件内容 (4)HTTP信息头管理器组件内容 (5)CSV数据文件设置组 ...

  10. php反转字符串的三种方法

    (假设有字符串abcd,用php实现字符串翻转) 1.第一种php有自带的函数strrev可以轻松实现: $str = 'abcd'; //第一种自带strrev实现翻转 echo strrev($s ...