Skip to content

Latest commit

 

History

History
139 lines (109 loc) · 4.07 KB

File metadata and controls

139 lines (109 loc) · 4.07 KB

FPSMaster 代码规范

本文档概述了FPSMaster项目的代码标准和贡献指南。所有贡献者在提交代码时都应遵循这些标准,以确保代码库的一致性和质量。

代码风格指南

命名规范

  1. 方法名、变量名和包名使用驼峰式命名法(camelCase)

    public void initializeModules() { ... }
    private String clientVersion;
  2. 类名和接口名使用帕斯卡命名法(PascalCase)

    public class ModuleManager { ... }
    public interface EventListener { ... }
  3. 常量使用全大写蛇形命名法(UPPER_SNAKE_CASE)

    public static final String CLIENT_VERSION = "v4";

代码组织

  1. 按字母顺序组织导入并删除未使用的导入
  2. 将相关方法分组放置
  3. 保持方法专注于单一职责
  4. 限制方法长度以提高可读性(建议控制在50行以内)
  5. 使用适当的访问修饰符(private, protected, public)来加强封装性
  6. 字段应放在类顶部,其次是构造函数,然后是方法

格式化

  1. 使用4个空格缩进(不要用制表符)
  2. 左大括号与声明放在同一行
    public void method() {
        // 代码
    }
  3. ifforwhile等关键字后使用空格
    if (condition) {
        // 代码
    }
  4. 在运算符周围使用空格
    int a = b + c;

文档

  1. 为所有公共类和方法添加JavaDoc注释
    /**
     * 初始化模块系统。
     * 此方法注册所有模块并设置事件监听器。
     */
    public void initializeModules() {
        // 实现
    }
  2. 为复杂代码段添加行内注释
  3. 保持注释与代码变更同步更新

错误处理

  1. 使用适当的异常处理
  2. 避免空的catch块;至少应记录异常
    try {
        // 可能抛出异常的代码
    } catch (Exception e) {
        ClientLogger.error("处理失败: " + e.getMessage());
    }
  3. 提供有意义的错误信息

最佳实践

  1. 避免使用魔法数字;改用命名常量
  2. 尽量减少静态字段和方法的使用
  3. 遵循最小权限原则(使用尽可能严格的访问修饰符)
  4. 避免代码重复;将通用代码提取为可重用方法
  5. 根据任务选择合适的数据结构
  6. 实现适当的空值检查以避免NullPointerException

测试要求

在提交pull request前,贡献者必须:

  1. 测试所有受影响的功能:确保变更不会破坏现有功能
  2. 跨不同Minecraft版本测试:如适用,验证变更在所有支持的Minecraft版本(1.8.9, 1.12.2等)上都能正常工作
  3. 测试边界情况:考虑并测试边界条件和异常输入
  4. 性能测试:对于性能关键代码,验证变更不会对性能产生负面影响

测试清单

  • 测试变更的主要功能
  • 验证变更不会破坏现有功能
  • 在所有适用的Minecraft版本上测试
  • 考虑并测试边界情况
  • 验证性能影响(如适用)
  • 检查测试过程中是否有控制台错误

Pull Request指南

提交pull request时:

  1. 描述你的变更:清晰说明PR做了什么
  2. 引用相关问题:链接到PR解决的所有相关问题
  3. 保持变更专注:每个PR应只解决一个关注点
  4. 遵循代码风格:确保代码遵循项目的代码风格指南
  5. 更新文档:更新变更影响的所有相关文档

PR清单

  • 代码遵循项目的代码风格指南
  • 测试所有相关模块
  • 文档已更新(如适用)
  • PR只解决一个关注点
  • PR引用了相关问题

贡献流程

  1. Fork仓库:创建项目的个人fork
  2. 创建分支:在新分支中进行变更
  3. 实现变更:开发功能或修复
  4. 测试变更:确保所有测试通过且变更按预期工作
  5. 提交pull request:从你的分支向主仓库创建PR
  6. 处理评审反馈:根据代码评审要求进行修改

结语

遵循这些指南有助于保持FPSMaster项目的代码质量和一致性。感谢您的贡献,感谢您帮助FPSMaster变得更好!