知识卡片

循环依赖侵蚀

普通读书笔记卡 · 1938.a

内容

循环依赖是结构侵蚀的强信号,因为它让局部修改变成成组修改,测试和理解范围随之扩大。优先打破包、命名空间和组件级循环,往往比追逐零散代码坏味道更能改善架构。

参考来源

- 位置:第9章《使用软件度量指标来确保可维护性》9.1.2节「循环依赖的有害性」及9.7节「黄金法则」(源文件:_epub-src/index_split_078.html、index_split_081.html) - 结论依据:原文明确说明循环依赖被视为反模式,因为开发人员重用其中一个组件时每个相互依赖的组件也必须同时被引入,并在黄金法则中建议避免命名空间/包级别循环依赖、限制源文件/类级别循环依赖(超过五个元素的循环组有很大概率变成代码癌症),直接支持卡片对循环依赖是结构侵蚀的强信号、优先打破循环比追逐零散代码坏味道更能改善架构的论述。 - 原始内容:"循环依赖被视为一种反模式,因为当开发人员尝试重用其中一个组件时会出现一种困境,每个相互依赖的组件也必须同时被引入……避免在命名空间/包级别出现循环依赖。限制在源文件/类级别的循环依赖。任何具有五个以上元素的循环组都有很大的机会变成代码癌症。"