写给前端小姐姐的DDD - 领域驱动设计

本文探讨了领域驱动设计(DDD)在前端开发中的应用,尤其是针对React框架。通过介绍DDD的基本概念和传统四层架构,展示了如何将DDD理念应用于前端,包括用户系统领域的拆分、逻辑复用和UI组件化。作者强调了DDD在优化设计和提高代码复用性方面的重要性,并提出了前端可以借鉴后端微服务的思路。最后,提倡在开发前进行彻底的业务理解和领域划分。
摘要由CSDN通过智能技术生成

背景

DDD领域驱动设计,在后端领域,现在应用非常广泛,在我看来,前端(特别是React)也是非常适合DDD(小哥哥也可以看这篇文章)

什么是DDD?

Domain Driven Design - 领域驱动设计

重点是这个:设计

在学习一个新的知识时候,我推荐用80%的时间去学习那些20%重要的内容  -  二八定律,Peter

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

把项目的主要重点放在核心领域和领域逻辑上

把复杂的设计放在领域模型上

发起技术专家和领域专家之间的创造性协作,以迭代方式完善解决特定领域问题的概念模型


理论学完了,是不是很懵逼?别急,上面的看不懂就假装是我拿来凑字数的,你只要记住DDD  = 领域驱动设计

DDD - 举个例子

传统的四层架构如图所示:

c60655b69b240e7a509c0b517c2d86e3.png

分别为:

User Interface为用户界面层(或表示层),负责向用户显示信息和解释用户命令。这里指的用户可以是另一个计算机系统,不一定是使用用户界面的人。

Application为应用层,定义软件要完成的任务,并且指挥表达领域概念的对象来解决问题。这一层所负责的工作对业务来说意义重大,也是与其它系统的应用层进行交互的必要渠道。应用层要尽量简单,不包含业务规则或者知识,而只为下一层中的领域对象协调任务,分配工作,使它们互相协作。它没有反映业务情况的状态,但是却可以具有另外一种状态,为用户或程序显示某个任务的进度。

Domain为领域层(或模型层),负责表达业务概念,业务状态信息以及业务规则。尽管保存业务状态的技术细节是由基础设施层实现的,但是反映业务情况的状态是由本层控制并且使用的。领域层是业务软件的核心,领域模型位于这一层。

Infrastructure层为基础实施层,向其他层提供通用的技术能力:为应用层传递消息,为领域层提供持久化机制,为用户界面层绘制屏幕组件,等等。基础设施层还能够通过架构框架来支持四个层次间的交互模式。

具体示例可以看下面我画的这个图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值