mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 13:43:26 +08:00
- Add missing code-review.md and development-workflow.md to zh/README.md directory listing - Add mkdir -p command before copy in manual install instructions - Fix TypeScript test command path in SKILL-DEVELOPMENT-GUIDE.md - Add Anti-Patterns section to SKILL.md template - Add Template category to Skill Categories table in CONTRIBUTING.md - Add Pre-Review Requirements section to code-review.md (both en and zh) - Add Pre-Review Checks step to development-workflow.md (both en and zh) - Add trailing newlines to all files that were missing them
49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
# 编码风格
|
||
|
||
## 不可变性(关键)
|
||
|
||
始终创建新对象,永远不要修改现有对象:
|
||
|
||
```
|
||
// 伪代码
|
||
错误: modify(original, field, value) → 就地修改 original
|
||
正确: update(original, field, value) → 返回带有更改的新副本
|
||
```
|
||
|
||
原理:不可变数据防止隐藏的副作用,使调试更容易,并启用安全的并发。
|
||
|
||
## 文件组织
|
||
|
||
多个小文件 > 少量大文件:
|
||
- 高内聚,低耦合
|
||
- 典型 200-400 行,最多 800 行
|
||
- 从大模块中提取工具函数
|
||
- 按功能/领域组织,而非按类型
|
||
|
||
## 错误处理
|
||
|
||
始终全面处理错误:
|
||
- 在每一层显式处理错误
|
||
- 在面向 UI 的代码中提供用户友好的错误消息
|
||
- 在服务器端记录详细的错误上下文
|
||
- 永远不要静默吞掉错误
|
||
|
||
## 输入验证
|
||
|
||
始终在系统边界验证:
|
||
- 处理前验证所有用户输入
|
||
- 在可用的情况下使用基于模式的验证
|
||
- 快速失败并给出清晰的错误消息
|
||
- 永远不要信任外部数据(API 响应、用户输入、文件内容)
|
||
|
||
## 代码质量检查清单
|
||
|
||
在标记工作完成前:
|
||
- [ ] 代码可读且命名良好
|
||
- [ ] 函数很小(<50 行)
|
||
- [ ] 文件聚焦(<800 行)
|
||
- [ ] 没有深层嵌套(>4 层)
|
||
- [ ] 正确的错误处理
|
||
- [ ] 没有硬编码值(使用常量或配置)
|
||
- [ ] 没有变更(使用不可变模式)
|