最后更新: 2026-07-20
- 所有 Ability MUST 使用 Stage 模型(UIAbility / ExtensionAbility)
- FA 模型(PageAbility)MUST NOT 使用
- 应用配置 MUST 使用
module.json5,NOT 已废弃的config.json
- 所有变量 MUST 有明确类型声明
any类型 MUST NOT 使用- 类型断言 (
as) MUST 避免,优先使用接口和类型守卫 - 动态属性访问 MUST NOT 使用,应使用
Record类型
- UI 构建 MUST 使用 ArkUI 声明式组件
- 复杂 build 方法 SHOULD 拆分为独立
@Component - 组件状态 MUST 通过 V1 装饰器 (
@State/@Prop/@Link) 管理
- 生产日志 MUST 使用
hilog,NOTconsole - 日志 TAG SHOULD 使用模块名标识
- 日志级别 MUST 合理使用 (info / warn / error)
- 敏感信息 MUST NOT 输出到日志
- 页面组件 MUST 放在
pages/目录 - 可复用组件 SHOULD 独立抽取到
components/目录 - 业务逻辑 SHOULD 从 UI 组件中分离到独立的 service 层
- 核心业务逻辑 MUST 有单元测试
- UI 交互 SHOULD 有集成测试(ohosTest)
- 测试框架 MUST 使用
@ohos/hypium
- 字符串 MUST 引用
$r('app.string.*'),NOT 硬编码 - 颜色 SHOULD 引用
$r('app.color.*')支持暗色模式 - 图标 SHOULD 使用分层图标 (layered_image) 支持主题自适应
- 提交信息 MUST 遵循 Conventional Commits 格式
- 提交 MUST 包含结构化变更列表(中文,动词开头)
- Author MUST 标记 AI 工具身份(用于代码渗透率统计)