• ABP-DDD学习

    时间:2023-07-27 09:57:44

    有一个比较大的项目,打算使用 DDD +ABP +微服务 开发;1、涉及到社交; 业务场景比较复杂;会多变;2、采用前后端分离,netcore+vue;3、部署采用K8S +docker 进行部署;DDD ,根据阿里的技术发展史,还有博客园的各位大佬的介绍; 我个人理解为,从业务出发,让开发理解业务

  • 基于DDD的现代ASP.NET开发框架--ABP系列之2、ABP入门教程

    时间:2023-06-23 18:03:44

    基于DDD的现代ASP.NET开发框架--ABP系列之2、ABP入门教程ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用...

  • DDD学习笔记一

    时间:2023-06-03 14:04:50

    由于也是初学DDD,难免有很多不足和认识错误的地方。多数内容来自其他网络资料或者书籍。参考:http://www.cnblogs.com/Leo_wl/p/4418663.html希望多多提出宝贵意见,谢谢!!!DDD是一套强大的思想工具,是需要根据业务进行划分领域的,无论是否使用领域——对于公共的...

  • 如何一步一步用DDD设计一个电商网站(十一)—— 最后的准备

    时间:2023-06-01 23:34:14

     本系列所有文章如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念如何一步一步用DDD设计一个电商网站(二)—— 项目架构如何一步一步用DDD设计一个电商网站(三)—— 初涉核心域如何一步一步用DDD设计一个电商网站(四)—— 把商品卖给用户如何一步一步用DDD设计一个电商网站(五)——...

  • DDD分层架构之领域实体(验证篇)

    时间:2023-05-15 15:23:49

    DDD分层架构之领域实体(验证篇)在应用程序框架实战十四:DDD分层架构之领域实体(基础篇)一文中,我介绍了领域实体的基础,包括标识、相等性比较、输出实体状态等。本文将介绍领域实体的一个核心内容——验证,它是应用程序健壮性的基石。为了完成领域实体的验证,我们在前面已经准备好了验证公共操作类和异常公共...

  • DDD理论学习系列(9)-- 领域事件

    时间:2023-05-09 21:56:32

    DDD理论学习系列——案例及目录1. 引言A domain event is a full-fledged part of the domain model, a representation of something that happened in the domain. Ignore irre...

  • WeText项目:一个基于.NET实现的DDD、CQRS与微服务架构的演示案例

    时间:2023-04-17 17:01:56

    最近出于工作需要,了解了一下微服务架构(Microservice Architecture,MSA)。我经过两周业余时间的努力,凭着自己对微服务架构的理解,从无到有,基于.NET打造了一个演示微服务架构的应用程序案例,并结合领域驱动设计(DDD)以及命令查询职责分离(CQRS)体系结构模式,对事件驱...

  • 从壹开始微服务 [ DDD ] 之一 ║ D3模式设计初探 与 我的计划书

    时间:2023-02-19 12:50:42

    缘起哈喽大家周四好!又是开心的一天,时间过的真快,我们的 《从壹开始 .net core 2.1 + vue 2.5》前后端分离系列共 34 篇已经完结了,当然以后肯定还会有更新和修改,直接在文章内更新,并在文章开头做提醒,如果有大的改动或者新功能,会在目录页进行重点说明(可能简书的更新速度没有博客...

  • DDD~Unity在DDD中的使用

    时间:2023-02-15 14:52:48

    回到目录上一讲介绍了DDD中的领域层,并提到下次要讲Unity,所以这篇文章当然就要介绍它了,呵呵,Unity是Microsoft.Practices中的一部分,主要实现了依赖注入的功能,或者叫它控制反转,对于控制反转(IoC)的文章我介绍了不少,Autofac,Castle等等,今天主要说一下Un...

  • 基于DDD的.NET开发框架ABP实例,多租户 (Sass)应用程序,采用.NET MVC, Angularjs, EntityFramework-介绍

    时间:2023-02-13 11:14:33

    介绍基于ABPZERO的多租户 (Sass)应用程序,采用ASP.NET MVC, Angularjs-介绍ASP.NET Boilerplate作为应用程序框架。ASP.NET MVC和ASP.NET Web API作为Web框架。实体框架作为ORM。Angularjs作为SPA框架。Bootst...

  • DataSet的灵活,实体类的方便,DTO的效率:SOD框架的数据容器,打造最适合DDD的ORM框架

    时间:2023-02-12 09:29:49

    引言:DDD的困惑最近,我看到园子里面有位朋友的一篇博客 《领域驱动设计系列(一):为何要领域驱动设计? 》文章中有下面一段话,对DDD使用产生的疑问:•没有正确的使用ORM, 导致数据加载过多,导致系统性能很差。•为了解决性能问题,就不加载一些导航属性,但是却把DB Entity返回上层,这样对象...

  • DDD实战成绩管理---用户故事

    时间:2023-02-08 12:37:35

    本次DDD实践选取我们都熟悉的高校成绩管理作为例子。(一).需求描述每学期学校教务处老师会进行教学安排,具体就是建立教学班,指定该教学班代课教师,上课学生,然后进行排课(忽略此部分,这是另一个系统)。指定上课学生有下面几种方式:单独一个班上课;多个班合上课;一个班部分学生上课;一个班部分学生与其它班...

  • OnionArch 2.0 - 基于DDD的洋葱架构改进版开源 OnionArch - 采用DDD+CQRS+.Net 7.0实现的洋葱架构  MediatRPC - 基于MediatR和Quic通讯实现的RPC框架,比GRPC更简洁更低耦合,开源发布第一版

    时间:2023-02-07 17:06:30

    大家好,去年我发布了一篇 iamxiaozhuang/OnionArch2 (github.com)   欢迎大家研究使用。一、自动生成和发布领域事件我在OninArch1.0实现了对删除的实体自动生成和发布领域事件,并通过订阅这个领域事件,将删除的实体数据备份至回收站表中,以备审计和数据恢复。本次...

  • DDD实战进阶第一波(九):开发一般业务的大健康行业直销系统(实现经销商上下文仓储与领域逻辑)

    时间:2023-02-05 07:29:34

    上篇文章主要讲述了经销商上下文的需求与POCO对象,这篇文章主要讲述该界限上下文的仓储与领域逻辑的实现。关于界限上下文与EF Core数据访问上下文参考产品上下文相应的实现,这里不再累述。因为在经销商上下文中有两个聚合,一个是经销商聚合,一个是登录聚合,所以我们需要实现两个仓储接口:1.经销商仓储接...

  • [2018-12-07]用ABP入门DDD

    时间:2023-02-03 22:22:31

    前言ABP框架一直以来都是用DDD(领域驱动设计)作为宣传点之一。但是用过ABP的人都知道,ABP并不是一个严格遵循DDD的开发框架,又或者说,它并没有完整实现DDD的所有概念。但是反过来说,认真学过DDD的人会发现,所谓“完整实现了DDD,严格遵循DDD概念”的开发框架其实并不存在。因为DDD本质...

  • Go语言DDD实战初级篇

    时间:2023-01-31 17:03:41

    导读领域驱动设计(DDD)最简洁的描述可能是:如何在明确的限界上下文中创建通用语言的模型。通过 DDD思想设计开发的软件,在领域专家、开发者和软件本身之间不存在“翻译”,三者通过在限界上下文下的通用语言直接表示。而这个系列则是我们团队对 DDD 模式的探索和落地,旨在能帮助大家逐步揭开DDD的神秘面...

  • Go语言DDD实战初级篇

    时间:2023-01-31 11:11:35

    导读 领域驱动设计(DDD)最简洁的描述可能是:如何在明确的限界上下文中创建通用语言的模型。通过 DDD思想设计开发的软件,在领域专家、开发者和软件本身之间不存在“翻译”,三者通过在限界上下文下的通用语言直接表示。而这个系列则是我们团队对 DDD 模式的探索和落地,旨在能帮助大家逐步揭开DD...

  • 如何开始DDD(完)

    时间:2023-01-16 15:31:08

    连续写了两篇文章,这一篇我想是序的完结篇了。结合用户注册的例子再将他简单丰富一下。在这里只添加一个简单需求,就是用户注册成功后给用户发一封邮件。补充一下之前的代码public class DomainService{ public void Register(User user) { ...

  • DDD落地02 聚合 值对象

    时间:2023-01-15 17:01:00

    13 更深刻地理解领域知识  捕获行为需求和事件风暴  ​    箭头上的文字表示关系的含义。箭头的方向代表的是读这些文字的方向。比如说,“用例分析”指向“捕获行为需求”,读“……是……的一种方法”的时候,就把“用例分析”代入第一个省略号,把“捕获行为需求”代入第二个省略号,对应的读法是“用例分析是...

  • 领域驱动设计:微服务设计为什么要选择DDD?

    时间:2023-01-11 11:25:06

    我们知道,微服务设计过程中往往会面临边界如何划定的问题,我经常看到项目团队为微服务到底应该拆多小而争得面红耳赤。不同的人会根据自己对微服务的理解而拆分出不同的微服务,于是大家各执一词,谁也说服不了谁,都觉得自己很有道理。 那在实际落地过程中,我也确实见过不少项目在面临这种微服务设计困惑时,是靠拍脑...