Dart 语言
编写符合项目 SDK 约束和既定风格的清晰 Dart 代码。
决策
- 在
pubspec.yaml中读取 SDK 约束,然后再使用更新的语法。 - 优先使用简单类型和直接控制流,而不是没有展现复用价值的抽象。
- 当穷尽性分支能提高正确性时,使用密封类型为封闭变体建模。
- 对于小的结构化值使用记录;当身份、验证、文档或演化很重要时,使用具名领域类型。
- 仅在模式匹配能使分支或解构更清晰时使用它,而不是为了新奇。
- 保持公共 API 兼容性,除非明确要求进行破坏性变更。
- 保持可变状态私有,并暴露最小有用的表面。
遵循 Effective Dart 在命名、文档、使用和设计方面的指南。匹配仓库的 lint 规则,而不是添加冲突的风格策略。
验证
使用 Dart MCP 语义查找和分析(当当前环境暴露它们时);否则检查源代码并使用项目 CLI。运行格式化、静态分析和最窄的相关测试。当更改公共包 API 时,检查示例和下游调用点。
边界
- 异步、流、取消和隔离:使用
dart-concurrency技能。 - Flutter 组件组合或状态所有权:使用相关的 Flutter 技能。
- JSON 和持久化模式行为属于相应的数据技能。