mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-31 06:03:29 +08:00
* docs(zh-CN): sync Chinese docs with latest upstream changes * update --------- Co-authored-by: neo <neo.dowithless@gmail.com>
1.3 KiB
1.3 KiB
paths
| paths | ||
|---|---|---|
|
Swift 编码风格
本文件在 common/coding-style.md 的基础上扩展了 Swift 相关的内容。
格式化
- SwiftFormat 用于自动格式化,SwiftLint 用于风格检查
swift-format已作为替代方案捆绑在 Xcode 16+ 中
不变性
- 优先使用
let而非var— 将所有内容定义为let,仅在编译器要求时才改为var - 默认使用具有值语义的
struct;仅在需要标识或引用语义时才使用class
命名
遵循 Apple API 设计指南:
- 在使用时保持清晰 — 省略不必要的词语
- 根据方法和属性的作用而非类型来命名
- 对于常量,使用
static let而非全局常量
错误处理
使用类型化 throws (Swift 6+) 和模式匹配:
func load(id: String) throws(LoadError) -> Item {
guard let data = try? read(from: path) else {
throw .fileNotFound(id)
}
return try decode(data)
}
并发
启用 Swift 6 严格并发检查。优先使用:
Sendable值类型用于跨越隔离边界的数据- Actors 用于共享可变状态
- 结构化并发 (
async let,TaskGroup) 而非非结构化的Task {}