知识卡片
业务复杂度与技术复杂度的隔离
内容
需求分业务需求与质量需求:业务需求数量决定规模且相互依赖,其复杂度称”业务复杂度”(如电商促销规则);质量需求(安全、高性能、高并发、高可用)挑战技术实现且彼此影响,其复杂度称”技术复杂度”。二者非独立,共同作用使复杂度不可预期,若不界定边界就像易燃气体混在密闭容器随时”组合爆炸”。应对之道是关注点分离:用分层架构把业务逻辑封装到领域层、技术实现放到基础设施层,理想下二者正交。
参考来源
- 位置:《解构领域驱动设计》第2章2.3.2节《清晰结构》(源文件:_epub-src/OEBPS/011.xhtml,图2-5、图2-6)
- 结论依据:作者定义业务复杂度与技术复杂度,用"组合爆炸"比喻警示混杂风险,主张以分层架构隔离二者、追求业务与技术正交。
- 原始内容:技术复杂度与业务复杂度并非完全独立的,二者的共同作用会让系统的复杂度变得不可预期、难以掌控……就好似将各种不稳定的易燃易爆气体混合在一个密闭容器中,随时都可能产生复杂度的组合爆炸。