关于 modular-code
modular-code 是用于组织易维护 Python 代码的技能,适合开发者和 AI 辅助编码工作流。它提供文件规模指引、模块拆分依据及渐进式重构步骤。
主要功能
- 01Python 文件规模指引
- 02模块拆分判断标准
- 03包结构示例
- 04命名与组织规范
- 05渐进式重构步骤
适用场景
- 01拆分过大的 Python 模块
- 02分离互不相关的代码职责
- 03重构文件并逐步运行测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ parcadei/ continuous-claude-v3 --skill modular-code安装后在 Claude Code 中输入/modular-code确认已加载。
详细介绍
模块化代码组织
编写模块化 Python 代码,并将文件大小控制在便于维护和 AI 辅助开发的范围内。
文件大小指南
| 行数 | 状态 | 建议操作 |
|---|---|---|
| 150-500 | 最佳 | 最适合 AI 代码编辑器,也便于人类理解 |
| 500-1000 | 较大 | 寻找自然的拆分点 |
| 1000-2000 | 过大 | 重构为职责明确的模块 |
| 2000+ | 严重 | 必须拆分——会导致工具问题和认知负担过重 |
何时拆分
符合以下任一条件时就应拆分:
- 文件超过 500 行
- 同一文件中包含多个互不相关的职责
- 查找函数时需要反复滚动,令人疲惫
- 难以组织该文件的测试
- AI 工具会截断或遗漏上下文
如何拆分
自然的拆分点
- 按领域概念拆分:
auth.py→auth/login.py、auth/tokens.py、auth/permissions.py - 按抽象层拆分:将接口与实现分开
- 按数据类型拆分:将针对相关数据结构的操作归在一起
- 按 I/O 边界拆分:隔离数据库、API 和文件操作
包结构
feature/
├── __init__.py # Keep minimal, just exports
├── core.py # Main logic (under 500 lines)
├── models.py # Data structures
├── handlers.py # I/O and side effects
└── utils.py # Pure helper functions
应该做
- 使用有意义的模块名称(
data_storage.py,而不是utils2.py) - 让
__init__.py文件尽量精简或留空 - 将相关函数归在一起
- 将纯函数与副作用隔离
- 模块名称使用 snake_case
不应该做
- 仅按行数随意拆分文件
- 创建只包含一个函数的模块
- 过度模块化,陷入“包地狱”
- 在模块名称中使用点或特殊字符
- 用“魔法”导入隐藏依赖关系
重构大型文件
拆分现有大型文件时:
- 识别功能簇:找出相关函数组
- 逐步提取:每次移动一个功能簇
- 更新导入:修正所有导入语句
- 运行测试:每次移动后确认没有问题
- 更新文档:更新所有指向旧位置的引用
当前代码库中值得关注的对象
需要处理的 2000 行以上文件:
- 数学计算模块(scipy、mpmath、numpy)——领域特定,可能可以接受
- patterns.py——考虑按模式类型拆分
- memory_backfill.py——考虑按操作类型拆分
资料来源
评论
支持 Markdown