欢迎来到天天文库
浏览记录
ID:46892587
大小:52.00 KB
页数:12页
时间:2019-11-28
《软件设计指导v10》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VI.0版本软件应用规范1引言1.1背景1)适用项冃:2)木规范采用以下的术语描述:★规则:强制必须遵守的原则。★建议:加以考虑的原则。1编程规范1.1排版建议:一行程序要小于100字符,不要写得过长。1.2注释1.2.1.h/.c/.cpp文件注释如下例:Copyright:FilcNamc:Description:Version:1.00V更改描述〉History:Notes:Note1:122函数注释如下例:Name:example1Description:describeexample1whattodo.Input:Output:
2、Int*ret//describewhatisretReturn:FALSE://describewhatisfalseTRUE://describewhatisfalse■BOOLEANexamplel(intindex,int123结构定义注释规则:对于主要结构中的成员变量必须进行注释建议:对于主要变量定义进行注释1.2.4修改纪录注释当发布版木后,每次修改必须提供修改纪录注释。对开发屮的版木,如杲是新增特性的修改,不需要提供修改纪录注释。修改纪录注释的内容为:丨I期、修改人姓名、修改的原因(如果是新增需求则说明,如果是修改bug则描述bug号)、修改的方法(可选)、修改的起始和
3、终止处。BOOLEANexample1(intindex,int*ret){_ULErrCode;//错误码//Modifiedbykangyixiaforwhat,2004-3-10//describewhatwilldo•••//EndofModifybykangyixia,2004-3-10returnErrCode;1.3标识符命名1.3.1变量统一变量类型如下:规则:变量的命名选择大写字母惯例。示例:SreAddro规则:变量的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。示例:ProgNumc规则:对于变量命名,禁止取单个字符
4、(如i、j、k...),但i、j、k作局部循环变量是允许的。规则:使用前缀来区分变量的作用范围,全局变量的前缀为g,模块变量的前缀为m,静态变量为s,并且主要变量的命名需要增加类型前缀,具体前缀为:bitbtint•1BooleanbStringstrStructurestruEnumePointerpU8u8U16ul6U32u32S8s8S16sl6S32s321.3.2宏规则:宏的命名:单词的字母全部大写,各单词之间用下划线隔开。示例:MAX_PROG_NUM1.任务规则:以TASK打头,后跟模块标识,再后跟1・3个单词,最后以类型结尾。示例:TASK_NVD_NAMEo示例:
5、TASK_NVD_PRIOo示例:TASK_NVD_MODEo2.消息队列规则:以QUEUE打头,后跟模块标识,再后跟1・3个单词,最后以类型结尾。示例:QUEUE.NVD_NAMEo示例:QUEUE.NVD_COUNTo示例:QUEUE.NVD_FLAGo3.消息号规则:以MSG打头,后跟模块标识,再后跟1・3个单词。示例:MSG_NVD_OVRo4.信号规则:以SEM打头,后跟模块标识,再后跟1・3个单词,最后以类型结尾。示例:SEM_NVD_NS_NAMEo示例:SEM_NVD_NS_COUNTo示例:SEM_NVD_NS_FLAG«5.(系统)事件规则:以EVENT打头,后跟
6、模块标识,再后跟1・3个单词。示例:EVENT_NVD_OVR。8.命令响应错误码规则:以NSERR打头,后跟模块标识,再后跟1・4个单词。示例:NSERR_NVD_PARA_ERR。11.各种模块内部的标识规则:以标识所属模块的模块标识打头,再后跟1・3个单词。示例:NVD_EIT_RCVc12.防止头文件重复引用的宏规则:以一打头,后跟文件名,以_H结尾。示例:_SYS_CONF_Ho(对应头文件为sys_conf.h)13.编译开关规则:以_SW打头,后跟1・3单词(表示编译开关内容)。示例:_SW_PRINT0(测试代码开关)1.3.3结构规则:结构名各单词的字母均为大写,单
7、词间用下划线连接。必须使用typedefo结构成员的命名规则同局部变量的命名规则。示例:typedefstructNVD_TABLE_STRUC{_UCValid;_ULSpcCode[MAX_NUM];}NVD_TABLE;1.3.4枚举规则:枚举名各单词的字母均为大写,单词间用下划线隔开。枚举成员的命名规则:单词的字母全部大写,各单词之间用下划线隔开。枚举各成员的第一个单词相同。示例:typedefenumNVD_STA_ENUM{NVD_INDLE,
此文档下载收益归作者所有