返回 Skill 列表
extension
分类: 开发与工程无需 API Key

best-practices-checker

检查代码是否违反了最佳实践,包括DRY原则、SOLID原则、错误处理模式、测试实践、文档标准和版本控制实践。返回带有改进建议的结构化最佳实践报告。

person作者: jakexiaohubgithub

Best Practices Checker Skill

Instructions

  1. Review code for best practice violations
  2. Check for DRY (Don't Repeat Yourself) violations
  3. Verify SOLID principles are followed
  4. Review error handling patterns
  5. Check testing practices and coverage
  6. Review documentation standards
  7. Check version control practices
  8. Return structured best practice reports with:
    • File path and line numbers
    • Best practice violation type
    • Current code
    • Suggested improvement
    • Reason
    • Priority (usually Should-Fix or Nice-to-Have)

Examples

Input: Code duplication Output:

### BEST-001
- **File**: `utils.js`, `helpers.js`
- **Lines**: 15-20 (utils.js), 30-35 (helpers.js)
- **Priority**: Should-Fix
- **Issue**: Duplicate code for calculating total price
- **Current Code**:
  ```javascript
  // In utils.js
  function calculateTotal(items) {
      let total = 0;
      for (let item of items) {
          total += item.price;
      }
      return total;
  }
  
  // In helpers.js (duplicate)
  function getTotal(items) {
      let total = 0;
      for (let item of items) {
          total += item.price;
      }
      return total;
  }
  • Suggested Fix:
    // In shared/utils.js
    export function calculateTotal(items) {
        return items.reduce((sum, item) => sum + item.price, 0);
    }
    
    // Import in both files
    import { calculateTotal } from './shared/utils';
    
  • Reason: DRY principle - code duplication makes maintenance harder and increases bug risk

## Best Practice Areas to Check

- **DRY Violations**: Code duplication that should be extracted
- **SOLID Principles**: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion
- **Error Handling**: Consistent error handling patterns, proper error propagation
- **Testing**: Test coverage, test quality, testing patterns
- **Documentation**: Code comments, API documentation, README quality
- **Version Control**: Commit message quality, branch naming, git practices
- **Code Organization**: Logical file structure, module organization
- **Naming Conventions**: Clear, descriptive names
- **Function Size**: Functions that are too long
- **Complexity**: Cyclomatic complexity, nested conditionals

## Priority Guidelines

- **Must-Fix**: Best practice violations that cause bugs or significant maintainability issues
- **Should-Fix**: Best practice improvements that enhance code quality
- **Nice-to-Have**: Minor best practice enhancements