软件架构中的连接性、边界上下文与架构量子
在软件架构设计中,提升系统模块化、合理处理组件间的耦合关系是至关重要的。下面将介绍一些关键概念和准则,帮助我们更好地理解和设计软件架构。
连接性准则
Page - Jones 提出了三条使用连接性(connascence)来提升系统模块化的准则:
1. 最小化整体连接性 :将系统分解为封装元素,以此减少整体的连接性。
2. 最小化跨封装边界的连接性 :对于跨越封装边界的剩余连接性,要尽可能降低。
3. 最大化封装边界内的连接性 :在封装边界内部,让连接性达到最大。
传奇软件架构创新者 Jim Weirich 重新推广了连接性的概念,并给出两条建议:
- 程度规则 :将强形式的连接性转换为弱形式的连接性。
- 局部性规则 :随着软件元素之间距离的增加,使用较弱形式的连接性。
连接性与边界上下文的交集
领域驱动设计(DDD)是一种允许对复杂问题域进行有组织分解的建模技术。DDD 定义了边界上下文,在这个上下文中,与领域相关的一切在内部是可见的,但对其他边界上下文是不透明的。边界上下文的概念认识到每个实体在局部上下文中能发挥最佳作用。例如,不同的问题域可以创建自己的 Customer 类,而不是在整个组织中创建统一的类,并在集成点协调差异。这种隔离也适用于数据库模式等实现细节,这类似于微服务中常见的数据隔离程度。
架构师在基于 DDD 设计系统(
超级会员免费看
订阅专栏 解锁全文
24

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



