DGIOT物联网架构设计

本文探讨了物联网应用系统中的分层架构设计,包括严格分层、松散分层和继承分层架构,强调了层间单向依赖和通信的重要性。在领域驱动设计(DDD)背景下,讨论了资源库的定位以及前后端分离对分层架构的影响,如BFF模式和聚合对象接口模式的选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

## **分层架构**

在应用系统开发中,采用严格的、单一的、真正的的分层架构是可以的,但实际上我们已经采用了多种架构模式设计系统。当多种不同范式的架构混合在一起,你会不会出现“指鹿为马”的现象呢?

+   ## **严格分层架构**
    

在研究分层架构时,常通过概念性的定义或 OSI 七层应用(架构)来说明或解释分层架构:

> 架构模式 Layers 有助于将应用程序划分为多组子任务,其中每组子任务都位于特定抽象层。

![osi.png](http://dgiot-1253666439.cos.ap-shanghai-fsi.myqcloud.com/shuwa_tech/zh/backend/dgiot/ddd/osi.png)

图片取自《 POSA , Vol.I , p22 》

作为一个在项目中引入分层架构的应用者,我们应该从更具体的规范来实现分层架构:

+   相邻层之间**必须是单向耦合**。上层只能依赖下层,下层永远不能依赖上层。
    
+   相邻层之间**必须是单向通信**。上层去调用下层所提供的接口,下层永远不能调用上层的接口。
    

《 POSA , Vol.I 》 为我们提供了更多的实现规范,然而我要解决的是有关层的**单向依赖**问题。因为有一些人在使用分层架构时,尤其是将分层架构引入到项目的目录结构时,对于某些对象的划分(从属)存在一些混乱问题。

如果你有兴趣了解更多分层架构的实现规范,可参考:《 POSA , Vol.I 》第二十六页到第二十九页相关知识。

+   ## **松散分层架构(Relaxed Layered System)**
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值