本节内容小编为大家精选带来的是华为软件工程师手册(pdf格式华为软件编程规范和范例),本pdf格式华为软件工程师手册共分为59页,有需要的朋友点击本文下方的下载地址进行下载即可。
温馨提示:
本文档为pdf格式,因此需确保在阅读之前你已经安装了PDF阅读器,如果尚未安装阅读器,建议下载福昕PDF阅读器或其他PDF阅读器,进行安装后阅读。
华为软件工程师手册内容简介
目录
1、排版................................................6
2、注释................................................11
3、标识符命名................................................18
4、可读性................................................20
5、变量、结构................................................22
6、函数、过程................................................28
7、可测性................................................36
8、程序效率................................................40
9、质量保证................................................44
10、代码编辑、编译、审查................................................50
11、代码测试、维护................................................52
12、宏................................................53
1 排版
?1-1:程序块要采用缩进风格编写,缩进的空格数为4个。
说明:对于由开发工具自动生成的代码可以有不一致。
?1-2:相对独立的程序块之间、变量说明之后必须加空行。
示例:如下例子不符合规范。
if (!valid_ni(ni))
{
... // program code
}
repssn_ind = ssn_data[index].repssn_index;
repssn_ni = ssn_data[index].ni;
应如下书写
if (!valid_ni(ni))
{
... // program code
}
repssn_ind = ssn_data[index].repssn_index;
repssn_ni = ssn_data[index].ni;
?1-3:较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,
操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。
示例:
perm_count_msg.head.len = NO7_TO_STAT_PERM_COUNT_LEN
+ STAT_SIZE_PER_FRAM * sizeof( _UL );
act_task_table[frame_id * STAT_TASK_CHECK_NUMBER + index].occupied
= stat_poi[index].occupied;
act_task_table[taskno].duration_true_or_false
= SYS_get_sccp_statistic_state( stat_item );
report_or_not_flag = ((taskno < MAX_ACT_TASK_NUMBER)
……
11-4:循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分,长表达式要在低
优先级操作符处划分新行,操作符放在新行之首。
示例:
if ((taskno < max_act_task_number)
&& (n7stat_stat_item_valid (stat_item)))
{
... // program code
}
for (i = 0, j = 0; (i < BufferKeyword[word_index].word_length)
&& (j < NewKeyword.word_length); i++, j++)
{
... // program code
}
for (i = 0, j = 0;
(i < first_word_length) && (j < second_word_length);
i++, j++)
{
... // program code
}
11-5:若函数或过程中的参数较长,则要进行适当的划分。
示例:
n7stat_str_compare((BYTE *) & stat_object,
(BYTE *) & (act_task_table[taskno].stat_object),
sizeof (_STAT_OBJECT));
n7stat_flash_act_duration( stat_item, frame_id *STAT_TASK_CHECK_NUMBER
+ index, stat_object );
11-6:不允许把多个短语句写在一行中,即一行只写一条语句。
示例:如下例子不符合规范。
rect.length = 0; rect.width = 0;
应如下书写
……
华为软件工程师手册(华为软件编程规范和范例)相关内容小编就为大家介绍到这里了,更多pdf格式免费资料文档下载,敬请关注东坡下载站!
- PC官方版
- 安卓官方手机版
- IOS官方手机版