AgentSkillsCN

flutter-style

Flutter/Dart 编码规范指南。**在编写 Flutter/Dart 代码前务必阅读并遵循。**当新建文件、重构代码,或对 Flutter/Dart 代码质量进行审查时,可调用此技能。

SKILL.md
--- frontmatter
name: flutter-style
description: Flutter/Dart coding style guide. **Must use before writing Flutter/Dart code.** Use when creating new files, refactoring code, or reviewing Flutter/Dart code quality.

Flutter/Dart 编码规范

编写 Flutter/Dart 代码前必须遵循以下规范。

文件组织

一类一文件

  • 每个类独立存放在单独文件中
  • 文件名使用 snake_case,与类名对应
    • DanmakuMessagedanmaku_message.dart
    • WebSocketClientwebsocket_client.dart
  • 例外:枚举可与相关类合并;私有内部类可与外部类合并
  • 使用 barrel 文件(如 models.dart)统一导出

目录结构

code
lib/
  src/
    models/       # 数据模型
    services/     # 服务类
    utils/        # 工具类
    widgets/      # UI 组件

导入顺序

  1. Dart SDK 库
  2. Flutter 框架库
  3. 第三方包
  4. 项目内部文件

类成员顺序

  1. 静态常量
  2. 静态变量
  3. 实例变量
  4. 构造函数
  5. 静态方法
  6. 实例方法
  7. 私有方法

命名规范

类型风格示例
类名PascalCaseWebSocketClient
文件名snake_caseweb_socket_client.dart
变量/方法camelCasesendMessage()
常量camelCase + const/finalconst maxRetries = 3
私有成员前缀 __connectionState

注释规范

  • 公开 API 必须有文档注释(///
  • 复杂逻辑必须有行内注释(//
  • 标记:TODO:FIXME:NOTE: