模块(Module)
缩写:无
简述
将相关定义分组、控制导出与依赖边界的程序组织单位。模块管理命名空间与封装,是构建大型程序与复用的基础;循环依赖与过粗/过细拆分是常见问题。
使用场景
代码组织、库发布、按功能拆分团队边界。
实践与应用
flowchart LR
模块A -->|导入公开 API| 模块B
模块B -.->|不应依赖私有实现| 模块A内部
flowchart LR 模块A -->|导入公开 API| 模块B 模块B -.->|不应依赖私有实现| 模块A内部
注意事项
• 循环依赖初始化顺序问题
• 上帝模块
• 过度微模块增加导航成本
关联术语
• 命名空间:模块常兼作名称分区
• 封装:通过导出控制隐藏内部
• 包:分发与版本化的更大单元(生态相关)
• 依赖:模块之间的引用关系