写点什么

ArkTS 语言 OpenHarmony/HarmonyOS 项目代码规范

作者:坚果
  • 2023-06-24
    北京
  • 本文字数:1200 字

    阅读完需:约 4 分钟

ArkTS语言OpenHarmony/HarmonyOS项目代码规范

ArkTS 语言 OpenHarmony/HarmonyOS 项目代码规范

1.所有文件,包括自动生成的编译文件 package.json 都要格式化(IDE 快捷键 Ctrl+Alt+L);


2.函数命名,C++大驼峰,TS、JS 小驼峰,函数命名注意动宾结构;


3.静态常量需使用全大写,文件目录使用全小写(不建议包含特殊字符如"-"和"_"等);


4.类名使用大驼峰,函数的参数、全局变量和局部变量都使用小驼峰,命名要规范化,见名知意;


5.if 语句后必须跟“{”,哪怕只有一行代码;


6.有 break 或 return 的条件,先 break 或 return 再走其他的逻辑;


7.条件判断,当一个分支达成条件时及时返回,不需要再走其他分支;


8.代码中避免出现魔鬼数字,需补上注释,或者用符合语义的名词常量代替,如下:


  // One minute has 60 seconds.  let time = 60
const ONE_MINUTE = 60 let time = ONE_MINUTE
复制代码


9.字符串拼接使用模板字符串;


10.组件使用,除了宽高属性可以在一行,其他的属性必须换行;


11.TS、JS 中关于是否添加";"的问题,风格要统一,建议添加";";


12.字符串和图片资源等的使用,支持"r"使用的,全部使用"�"使用的,全部使用"r"引用;


13.新增文件注意开源协议、版权检查;


14.截图要使用真机效果图;


15.readme 中使用“.”,不要用“、”,检查错别字;


16.异步方法中需要返回方法的返回值,不用声明变量,直接 return,如下:


  return await this.mediaTest.getFileAssets(fetchOp)
复制代码


17.方法中的参数需要类型声明;


18.import 文件顺序,同类型放一起;


19.string.json 中 description 要写简要描述,zh 下要用中文;


20.TS、JS 语言缩进为 2 格,C++语言缩进为 4 格;


21.涉及应用截图时,图片不能包含人物、关键信息、网络等有侵权风险的资源;


22.工程中不要配置签名信息,禁止上传 local.properties 和 package-lock.json 等系统自动生成的文件;


23.规范日志格式,统一用[Nust_包名]开头,日志打印需要使用 Hilog 接口,建议封装单独的 Logger 类 ,示例如下:


import hilog from '@ohos.hilog'
export class Logger { static PREFIX: string = '[Nust_Weather]' static DOMAIN: number = 0xFF00 static FORMAT: string = '%{public}s, %{public}s'
static debug(...args: any[]) { hilog.debug(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args) }
static info(...args: any[]) { hilog.info(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args) }
static warn(...args: any[]) { hilog.warn(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args) }
static error(...args: any[]) { hilog.error(Logger.DOMAIN, Logger.PREFIX, Logger.FORMAT, args) }}
复制代码


24.注释“//”后要加一个空格;如果注释跟在代码后面,则“//”前要加一个空格;


  // 正确示例  let a = 10
let a = 10 // 正确示例
复制代码


25.代码中避免出现中文字符,要使用资源代替,符合国际化开发标准;


26 应用包名统一使用“com.nust.xxx”,“xxx”为特性名称;

发布于: 刚刚阅读数: 3
用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020-10-25 加入

公众号:“大前端之旅”,OpenHarmony布道师,润和软件鸿蒙KOL,InfoQ签约作者,电子发烧友鸿蒙KOL

评论

发布
暂无评论
ArkTS语言OpenHarmony/HarmonyOS项目代码规范_OpenHarmony_坚果_InfoQ写作社区