知识卡片

架构设计的目的是解决复杂度问题

普通读书笔记卡 · 1653

内容

架构设计存在的唯一正当理由是解决软件系统的复杂度问题,而非架构重要、大家都做或盲目追求高性能高可用可扩展这些目标。判断架构设计是否必要合理,标准是先识别系统复杂度具体体现在哪(性能、可用性,也可能什么都不复杂),再针对性设计,而非不管三七二十一先套模板。发散:这条准则把要不要做架构设计、该抄哪家公司架构这类争论,转化成可回答的问题——复杂度到底在哪,套用方案解决的复杂度和我们的是否一致。

参考来源

- 位置:《从0开始学架构》第5章《03|架构设计的目的》"架构设计的真正目的"一节(源文件:_epub-src/OEBPS/Text/part0004_split_002.html) - 结论依据:原文明确"整个软件技术发展的历史,其实就是一部与'复杂度'斗争的历史,架构的出现也不例外……架构设计的主要目的是为了解决软件系统复杂度带来的问题",并说明该原则可用来判断"淘宝架构""高性能""引入Docker"等常见误区是否成立。 - 原始内容:整个软件技术发展的历史,其实就是一部与"复杂度"斗争的历史,架构的出现也不例外。简而言之,架构也是为了应对软件系统复杂度而提出的一个解决方案……架构设计的主要目的是为了解决软件系统复杂度带来的问题。