HCCDA 鸿蒙应用实验代码编写规范

代码结构 采用鸿蒙官方推荐的模块化分层设计,分为entry(主模块)、feature(功能模块)、common(公共库模块)。每个模块内按pagescomponentsutils等目录组织代码。

命名规则

  • 类名:大驼峰式,如MainAbilitySlice
  • 变量/方法名:小驼峰式,如userListloadData()
  • 资源文件:小写+下划线,如bg_main_page.xml

缩进与空格

  • 使用4个空格缩进(非Tab)。
  • 运算符两侧保留空格,如int sum = a + b;
  • 方法参数间需加空格,如setDimensions(width, height)

注释规范

文件头注释 每个文件开头需包含版权声明和功能描述:

/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2023-2024. All rights reserved.
 * Description: 主页面AbilitySlice,负责用户登录逻辑
 */

方法注释 公共方法必须使用JavaDoc规范:

/**
 * 计算两个坐标点之间的距离
 * @param x1 第一个点的x坐标
 * @param y1 第一个点的y坐标
 * @param x2 第二个点的x坐标
 * @param y2 第二个点的y坐标
 * @return 两点间的欧氏距离
 */
public double calculateDistance(double x1, double y1, double x2, double y2) {
    return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}

行内注释 复杂逻辑处需添加解释:

// 采用快速排序优化性能,因数据量超过5000条
quickSort(dataArray);

鸿蒙特色规范

Ability生命周期 关键生命周期方法必须添加注释:

public class MainAbility extends Ability {
    // Ability创建时触发
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        // 初始化UI布局
        setUIContent(ResourceTable.Layout_main_ability);
    }
}

资源引用 统一通过资源ID访问:

Text text = (Text) findComponentById(ResourceTable.Id_text_hello);
text.setText(ResourceTable.String_message);

线程安全 UI操作必须通过UITaskDispatcher

getUITaskDispatcher().asyncDispatch(() -> {
    // 更新UI组件
    progressBar.setProgress(50);
});

异常处理

错误捕获 对可能抛出异常的代码块进行显式处理:

try {
    File file = new File(path);
    file.create();
} catch (IOException e) {
    HiLog.error(LABEL, "文件创建失败: " + e.getMessage());
}

日志记录 使用鸿蒙HiLog工具分级记录:

private static final HiLogLabel LABEL = new HiLogLabel(HiLog.LOG_APP, 0x00201, "MainAbility");
HiLog.debug(LABEL, "调试信息:%{public}s", variable);

实验报告要求

代码提交格式

  • 压缩包命名:学号_姓名_实验X.zip
  • 包含:src目录、config.jsonREADME.md(说明运行环境与关键步骤)

注释覆盖率 核心业务代码注释率不低于30%,重点算法需逐行解释。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐