Showing
1 changed file
with
48 additions
and
0 deletions
standard.txt
0 → 100644
| 1 | +所有文件,包括自动生成的编译文件package.json都要格式化(IDE快捷键Ctrl+Alt+L); | ||
| 2 | +函数命名,C++大驼峰,TS、JS小驼峰,函数命名注意动宾结构; | ||
| 3 | +静态常量需使用全大写,文件目录使用全小写(不建议包含特殊字符如"-"和"_"等); | ||
| 4 | +类名使用大驼峰,函数的参数、全局变量和局部变量都使用小驼峰,命名要规范化,见名知意; | ||
| 5 | +if语句后必须跟“{”,哪怕只有一行代码; | ||
| 6 | +有break或return的条件,先break或return再走其他的逻辑; | ||
| 7 | +条件判断,当一个分支达成条件时及时返回,不需要再走其他分支; | ||
| 8 | +代码中避免出现魔鬼数字,需补上注释,或者用符合语义的名词常量代替,如下: | ||
| 9 | +// One minute has 60 seconds. | ||
| 10 | +let time = 60 | ||
| 11 | + | ||
| 12 | +const ONE_MINUTE = 60 | ||
| 13 | +let time = ONE_MINUTE | ||
| 14 | +字符串拼接使用模板字符串; | ||
| 15 | +组件使用,除了宽高属性可以在一行,其他的属性必须换行; | ||
| 16 | +TS、JS中关于是否添加";"的问题,风格要统一,建议添加";"; | ||
| 17 | +字符串和图片资源等的使用,支持"$r"使用的,全部使用"$r"引用; | ||
| 18 | +新增文件注意开源协议、版权检查; | ||
| 19 | +截图要使用真机效果图; | ||
| 20 | +readme中使用“.”,不要用“、”,检查错别字; | ||
| 21 | +异步方法中需要返回方法的返回值,不用声明变量,直接return,如下: | ||
| 22 | +return await this.mediaTest.getFileAssets(fetchOp) | ||
| 23 | +方法中的参数需要类型声明; | ||
| 24 | +import 文件顺序,同类型放一起; | ||
| 25 | +string.json中description要写简要描述,zh下要用中文; | ||
| 26 | +TS、JS语言缩进为2格,C++语言缩进为4格; | ||
| 27 | +涉及应用截图时,图片不能包含人物、关键信息、网络等有侵权风险的资源; | ||
| 28 | +工程中不要配置签名信息,禁止上传local.properties和package-lock.json等系统自动生成的文件; | ||
| 29 | +规范日志格式,统一用[Sample_包名]开头,如时钟日志,使用[Sample_Clock],日志打印需要使用Hilog接口,建议封装单独的Logger类 ,示例如下: | ||
| 30 | +import hilog from '@ohos.hilog' | ||
| 31 | +... | ||
| 32 | +class Logger { | ||
| 33 | +private domain: number = 0xFF00 | ||
| 34 | +private prefix: string = '[Sample_Clock]' | ||
| 35 | +private format: string = '%{public}, %{public}' | ||
| 36 | +... | ||
| 37 | +debug(...args: any[]) { | ||
| 38 | +hilog.debug(this.domain, this.prefix, this.format, args) | ||
| 39 | +} | ||
| 40 | +... | ||
| 41 | +} | ||
| 42 | +注释“//”后要加一个空格;如果注释跟在代码后面,则“//”前要加一个空格; | ||
| 43 | +// 正确示例 | ||
| 44 | +let a = 10 | ||
| 45 | + | ||
| 46 | +let a = 10 // 正确示例 | ||
| 47 | +代码中避免出现中文字符,要使用资源代替,符合国际化开发标准; | ||
| 48 | +应用包名统一使用“com.samples.xxx”,“xxx”为特性名称; |
-
Please register or login to post a comment