欢迎来到天天文库
浏览记录
ID:56654306
大小:288.00 KB
页数:69页
时间:2020-07-01
《华为代码规范文档.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、代码规文档第69页共69页目录1概述51.1编写目的51.2文档约定51.3预期的读者和阅读建议51.4参考文献52排版要求52.1程序块缩进52.2程序块之间空行52.3长语句和长表达式62.4循环、判断等长表达式或语句72.5长参数72.6短语句82.7条件、循环语句82.8语句对齐82.9函数、过程和结构等语句块92.10程序块分界符92.11操作符前后空格102.12其他113注释113.1有效注释量113.2公司标识113.3说明性文件123.4源文件头133.5函数头部说明133.6注释与代码一致143.7注释容143.8注释缩写143.9注释位置143.10变量、常量注释153.
2、11数据结构的注释153.12全局变量163.13注释缩排163.14注释与代码之间空行173.15变量定义、分支语句173.16其他194标识符命名204.1命名清晰204.2特殊命名需注释214.3命名风格保持一致214.4变量命名214.5命名规与系统风格一致214.6其他225可读性235.1运算符优先级23第69页共69页5.2避免直接使用数字作为标识符235.3其他246变量、结构256.1公共变量256.2公共变量说明256.3公共变量访问说明256.4公共变量赋值266.5防止局部变量与公共变量同名。266.6严禁使用未经初始化的变量作为右值。266.7其他267函数、过程34
3、7.1对所调用函数的错误返回码要仔细、全面地处理。347.2明确函数功能,精确(而不是近似)地实现函数设计。347.3局部变量347.4全局变量347.5接口函数参数357.6其他358可测性448.1调测开关448.2打印信息458.3单元测试458.4集成测试458.5断言使用458.6设置与取消有关测试手段时,不能影响软件功能功能488.7版本维护488.8其他489程序效率509.1编程时要经常注意代码的效率。509.2提高代码效率509.3全局效率高于局部效率519.4提高代码空间效率519.5循环体工作量最小化529.6其他5310质量保证5610.1在软件设计过程中构筑软件质量。
4、5610.2代码质量保证优先原则5610.3只引用属于自己的存贮空间。5610.4防止引用已经释放的存空间。5610.5存及时释放5710.6文件句柄及时关闭5710.7防止存操作越界5810.8认真处理程序所能遇到的各种出错情况5910.9初始化变量5910.10数据一致性检查5910.11严禁随意更改其它模块或系统的有关设置和配置5910.12不能随意改变与其它模块的接口59第69页共69页10.13系统接口5910.14编程时,要防止差1错误6110.15操作符检查6110.16分支语句写完整6210.17使用return语句6210.18不要滥用goto语句6210.19其他6211代
5、码编辑、编译、审查6511.1打开编译器的所有告警开关对程序进行编译6511.2在产品软件(项目组)中,要统一编译开关选项6511.3通过代码走读及审查方式对代码进行检查。6511.4测试部测试产品之前,应对代码进行抽查及评审6511.5其他6512代码测试、维护6712.1单元测试要求至少达到语句覆盖6712.2单元测试开始要跟踪每一条语句,并观察数据流及变量的变化6712.3清理、整理或优化后的代码要经过审查及测试。6712.4代码版本升级要经过严格测试6712.5使用工具软件对代码版本进行维护6712.6正式版本上软件的任何修改都应有详细的文档记录6712.7其他6713宏6813.1用
6、宏定义表达式时,要使用完备的括号6813.2将宏所定义的多条表达式放在大括号中6813.3使用宏时,不允许参数发生变化69第69页共69页1概述1.1编写目的为规软件开发人员的代码编写提供参考依据和统一标准。1.2文档约定说明本文档中所用到的专用术语定义或解释,缩略词定义。1.3预期的读者和阅读建议本文档适用于所有软件开发人员。1.4参考文献列出有关的参考文件,如:a.属于本项目的其他已发表文件;b.本文件中各处引用的文档资料。列出这些文件的标题、作者,说明能够得到这些文件资料的来源。2排版要求2.1程序块缩进程序块要采用缩进风格编写,缩进的空格数为4个。说明:对于由开发工具自动生成的代码可以
7、有不一致。2.2程序块之间空行相对独立的程序块之间、变量说明之后必须加空行。示例:如下例子不符合规。if(!valid_ni(ni)){...//programcode第69页共69页}repssn_ind=ssn_data[index].repssn_index;repssn_ni=ssn_data[index].ni;应如下书写if(!valid_ni(ni)){...//programcod
此文档下载收益归作者所有