规则建议:禁止循环依赖
作者: dtinth创建于 2018年4月27日更新于 2026年9月1日
标签help wantedenhancement
缺少循环导入会偶尔造成困扰,但会保持树状结构清晰,强迫程序员更早地思考一个更大范围的问题(在本例中是包的边界),如果推迟到后面,可能永远无法满意地解决。与 Go 的许多设计决策一样,它迫使程序员更早地思考一个更大范围的问题(在本例中是包的边界),如果推迟到后面,可能永远无法满意地解决。在大型项目中调试过循环依赖问题多次后,我过去常说,“如果一个项目是用 Go 编写的,我们可以雇用任何 Go 程序员,他们永远不会造成一个循环依赖,无论他们多么年轻。”
- Airbnb 的风格也禁止循环依赖。 实现方法是使用 import/no-cycle 规则(ES6 导入)或 dependencies/no-cycle 规则(require / import / export)。 影响:
内容来源: standard/standard