## **分层架构**
在应用系统开发中,采用严格的、单一的、真正的的分层架构是可以的,但实际上我们已经采用了多种架构模式设计系统。当多种不同范式的架构混合在一起,你会不会出现“指鹿为马”的现象呢?
+ ## **严格分层架构**
在研究分层架构时,常通过概念性的定义或 OSI 七层应用(架构)来说明或解释分层架构:
> 架构模式 Layers 有助于将应用程序划分为多组子任务,其中每组子任务都位于特定抽象层。

图片取自《 POSA , Vol.I , p22 》
作为一个在项目中引入分层架构的应用者,我们应该从更具体的规范来实现分层架构:
+ 相邻层之间**必须是单向耦合**。上层只能依赖下层,下层永远不能依赖上层。
+ 相邻层之间**必须是单向通信**。上层去调用下层所提供的接口,下层永远不能调用上层的接口。
《 POSA , Vol.I 》 为我们提供了更多的实现规范,然而我要解决的是有关层的**单向依赖**问题。因为有一些人在使用分层架构时,尤其是将分层架构引入到项目的目录结构时,对于某些对象的划分(从属)存在一些混乱问题。
如果你有兴趣了解更多分层架构的实现规范,可参考:《 POSA , Vol.I 》第二十六页到第二十九页相关知识。
+ ## **松散分层架构(Relaxed Layered System)**
在领域驱动设计(DDD)中采用的是**松散分层架构**,层间关系不那么严格。每层都可能使用它下面所有层的服务,而不仅仅是下一层的服务。每层都可能是半透明的,这意味着有些服务只对上一
DGIOT物联网分层架构设计解析

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

被折叠的 条评论
为什么被折叠?



