首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“进化软件架构”是一个矛盾吗?

“进化软件架构”是一个矛盾吗?
EN

Software Engineering用户
提问于 2018-04-18 16:36:22
回答 2查看 747关注 0票数 8

在我的理解中,进化体系结构归根结底是使体系结构易于修改。现在,体系结构通常被定义为您应该尽早得到的东西,因为它们以后很难更改。

这是怎么结合起来的?进化架构和简单的最小化架构有什么区别吗?

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2018-04-18 17:25:10

Neal关于进化架构的主旨可以找到这里。

释义:

架构是你希望你在项目早期就能做出的决定,人们认为这些事情很难改变。但是,如果我们构建了期望改变的体系结构呢?进化论体系结构支持增量式的、有指导意义的变更,这是跨多个维度的首要原则。

他接着描述了不同的架构场景,从“泥的大球”( Big Ball of Mud )、分层体系结构、微内核和REST开始,最终形成了微服务,他说这些服务具有n维的进化能力(其中n是不同的微服务的数量)。

根据福特的说法,进化的建筑:

  • 松耦合和高度内聚力内聚力
  • 是可组合的;可以组装组件来创建新的体系结构,
  • 可以增量地进行更改,而不需要对体系结构进行大修。

如果你愿意的话,你可以把演化架构看作是一种元体系结构;一种体系结构的架构。指导,要求设计原则,以促进铸造的东西粘土,而不是石头。

票数 20
EN

Software Engineering用户

发布于 2018-04-19 00:57:55

是的,如果你不加区别地改变一切都很容易,那是个矛盾。如果您必须添加代码以使某些内容“更容易更改”(定义“更容易”,如这里所示),那么只因为您添加了代码,就使得更改变得更加困难。另一方面,如果您确切知道将发生什么变化(这是非常不可能的),则不应将附加代码视为不必要的复杂性。

使事物“易于改变”可能是许多现代软件变得如此臃肿和难以改变的主要原因。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/369594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档