# Clean Code 优化 - 最近提交的文件 You are running a development task using the **clean-code skill** to optimize recently modified files. ## 任务目标 使用 Clean Code 原则优化最近提交的前后端文件,提升代码质量和可维护性。 ## 参考文件 - **Clean Code 技能**: `.agents/skills/clean-code/SKILL.md` (必读) - **Flutter 风格指南**: Effective Dart - **Java 风格指南**: 阿里巴巴 Java 开发手册 ## 需要优化的文件 ### Flutter 前端文件 (10个) **核心文件**: 1. `flutter_monisuo/lib/core/theme/app_color_scheme.dart` - 颜色系统 2. `flutter_monisuo/lib/ui/pages/home/home_page.dart` - 首页 3. `flutter_monisuo/lib/ui/pages/main/main_page.dart` - 主页面 4. `flutter_monisuo/lib/ui/pages/market/market_page.dart` - 行情页面 5. `flutter_monisuo/lib/ui/pages/trade/trade_page.dart` - 交易页面 6. `flutter_monisuo/lib/ui/pages/asset/asset_page.dart` - 资产页面 7. `flutter_monisuo/lib/ui/pages/mine/mine_page.dart` - 我的页面 **组件文件**: 8. `flutter_monisuo/lib/ui/components/asset_card.dart` - 资产卡片 9. `flutter_monisuo/lib/ui/components/glass_panel.dart` - 毛玻璃面板 10. `flutter_monisuo/lib/ui/components/neon_glow.dart` - 霓虹光效 ### Java 后端文件 (可选) 如果发现 Java 文件需要优化,也可以一并处理。 ## 优化重点 ### 1. 有意义的命名 ```dart // ❌ 坏 final d = DateTime.now(); final c = colorScheme; // ✅ 好 final currentDate = DateTime.now(); final colorScheme = Theme.of(context).colorScheme; ``` ### 2. 函数优化 ```dart // ❌ 坏 - 函数太长 Widget build(BuildContext context) { // 100+ 行代码... } // ✅ 好 - 拆分为小函数 Widget build(BuildContext context) { return Column( children: [ _buildHeader(context), _buildContent(context), _buildFooter(context), ], ); } Widget _buildHeader(BuildContext context) { ... } Widget _buildContent(BuildContext context) { ... } Widget _buildFooter(BuildContext context) { ... } ``` ### 3. 减少嵌套 ```dart // ❌ 坏 - 嵌套太深 if (user != null) { if (user.isActive) { if (user.hasPermission) { // ... } } } // ✅ 好 - 提前返回 if (user == null) return; if (!user.isActive) return; if (!user.hasPermission) return; // ... ``` ### 4. 提取常量 ```dart // ❌ 坏 - 魔法数字 padding: EdgeInsets.all(16), borderRadius: BorderRadius.circular(12), // ✅ 好 - 使用常量 padding: EdgeInsets.all(AppSpacing.md), borderRadius: BorderRadius.circular(AppRadius.lg), ``` ### 5. 移除重复代码 ```dart // ❌ 坏 - 重复代码 Text('首页', style: TextStyle(fontSize: 12, color: colorScheme.primary)), Text('行情', style: TextStyle(fontSize: 12, color: colorScheme.primary)), // ✅ 好 - 提取为函数 Text('首页', style: _labelStyle(context)), Text('行情', style: _labelStyle(context)), TextStyle _labelStyle(BuildContext context) { return TextStyle( fontSize: 12, color: Theme.of(context).colorScheme.primary, ); } ``` ### 6. 添加必要注释 ```dart // ❌ 坏 - 多余注释 // 设置文字颜色 color: colorScheme.primary // ✅ 好 - 解释为什么 // 使用 primary 颜色而不是 onSurface,确保在浅色主题下也有足够对比度 color: colorScheme.primary ``` ## 执行规则 1. **逐个文件优化** - 不要批量修改 2. **保持功能不变** - 只优化代码结构,不改变逻辑 3. **保持中文字符** - 不要修改任何中文文字 4. **使用 AppSpacing 和 AppRadius** - 替换硬编码的数字 5. **拆分大函数** - 函数超过 50 行就拆分 6. **减少嵌套层级** - 不超过 3 层嵌套 7. **提取重复代码** - DRY 原则 ## 优化流程 ### Phase 1: Flutter 核心页面 (60分钟) **优先级 P0**: 1. `home_page.dart` - 首页 2. `main_page.dart` - 主页面 3. `mine_page.dart` - 我的页面 **优先级 P1**: 4. `market_page.dart` - 行情页面 5. `trade_page.dart` - 交易页面 6. `asset_page.dart` - 资产页面 **每个文件优化步骤**: - 检查函数长度,拆分大函数 - 检查嵌套层级,减少嵌套 - 提取重复代码 - 使用 AppSpacing/AppRadius 替换魔法数字 - 优化命名 - 添加必要注释 ### Phase 2: 组件文件 (30分钟) 7. `asset_card.dart` 8. `glass_panel.dart` 9. `neon_glow.dart` 10. `app_color_scheme.dart` ### Phase 3: 测试验证 (15分钟) 11. **运行代码分析** ```bash flutter analyze ``` - 确保 0 errors 12. **测试应用** ```bash flutter run -d chrome ``` - 验证所有功能正常 - 验证主题切换正常 ### Phase 4: 提交代码 (10分钟) 13. **提交优化后的代码** ```bash git add . git commit -m "refactor: 使用 Clean Code 原则优化代码质量 - 拆分大函数为小函数 - 减少嵌套层级 - 提取重复代码 - 使用 AppSpacing/AppRadius 替换魔法数字 - 优化命名和添加注释 - 提升代码可读性和可维护性" git push ``` ## Clean Code 检查清单 每个文件优化后,检查以下项: - [ ] 函数长度 < 50 行 - [ ] 嵌套层级 ≤ 3 层 - [ ] 没有魔法数字 - [ ] 没有重复代码 - [ ] 命名清晰有意义 - [ ] 添加了必要注释 - [ ] 单一职责原则 - [ ] DRY 原则 ## 注意事项 ### ⚠️ 必须保持 - ✅ 所有功能不变 - ✅ 所有中文字符不变 - ✅ 所有 API 调用不变 - ✅ 主题切换功能正常 ### ❌ 禁止操作 - ❌ 修改业务逻辑 - ❌ 修改 API 接口 - ❌ 修改数据模型 - ❌ 删除现有功能 - ❌ 修改中文文字 ## 完成标准 - ✅ 所有文件优化完成 - ✅ flutter analyze 0 errors - ✅ 所有功能正常 - ✅ 代码可读性提升 - ✅ 代码可维护性提升 - ✅ 所有中文文字保持不变 --- **开始执行吧!让代码更干净、更优雅!** 🧹✨