除了干净的体系结构(六边形体系结构或端口和适配器)之外,是否还有其他值得了解的软件体系结构?
我无法通过简单的Googling搜索找到其他架构,我的研究中的大多数文章都是围绕Clean Architecture展开的。
谢谢。
发布于 2021-10-15 05:09:10
我不熟悉六边形建筑。我匆匆看了一眼。看起来六边形架构是Alistair推荐的分层架构。我所知道的最古老的分层架构(对于面向对象的软件)是模型-视图-控制器。视图是一层,控制器是另一层,模型是第三层。选择层在某种程度上是任意的。Here is a link to a very common four layer architecture。
分层架构的概念很简单。将不同类型的函数划分为层。遵循层仅允许与其下的层进行通信的规则。看一看分层架构的图,你就会明白我的意思。
这种做法在各层之间建立了边界。希望这些边界表示层之间的简单接口。其思想是,不同层的实现可以独立更改,只要每一层继续支持其上一层的定义良好的API。
实现这项工作的诀窍更多的是组织而不是技术。指派一个不同的团队来创建和维护每一层。我推荐一个scrum team == one layer。每一层/团队都有自己的源代码存储库。制定一条规则,其他团队只能使用发布的工件/库。
当两个团队会面并讨论他们的需求时,层的API就会发展。两个团队都需要就层API的更改达成一致。如果没有API更改,每个团队都可以免费测试、重构和改进自己的层,而无需咨询其他团队。
这些实践有助于保持分层架构的“整洁”和松散耦合。
https://stackoverflow.com/questions/69468746
复制相似问题