




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编码标准 批准人刘岩审核人崔戈拟制人刘慧丰批准日期1999512生效日期1999512关联文件沈阳东东系统集成有限公司更改记录序号发行日更改对象更改内容批准审查拟制01999512新发行刘岩崔戈刘慧丰目 录1.目的2/42.编码的注意事项2/43.编码风格 2/44.序言性注释格式3/4附录头注释样例1/4(附)1.目的编码是以程序设计时做成的程序规范书、流程等逻辑设计书为基础。在编码时,为减少在编码水平上的个人差异、顺利地进入单体试验阶段,以及便于进行调试和提高维护效率,特制定本标准。本标准作为代码的书写标准,其主要目的在于统一程序设计的记述风格,培养良好的编码习惯,使代码记述清晰、明确,具有良好的可读性。良好的编码习惯可以帮助程序员避开不必要的语法或语义错误,对出现的错误迅速定位。另外,良好的编码习惯还有助于在编码过程中对程序的设计思路进行验证和提示。本规范作为编码的通常标准,希望每个人都可以通过按此规范进行编码,提高程序的可读性、可修改性及维护的效率。如果程序由用户指定记述标准或使用(半)自动生成工具时,可适当遵循其标准。2.编码的注意事项(1)认真分析理解系统设计书、程序设计书(有时也包括流程图)。在很好地理解上述文件的基础上编码 (特别是在程序设计书与编码的担当者不同时)。对于不明确之处不可随意判断,应确认后再进行。(2)要注意把编制容易理解(易读)的程序放到第一位。在头脑中要经常考虑程序的读者,按照向读者说明的方式来写是一个窍门。读起来容易理解的程序一般质量都比较好、修改维护也容易。(3)在编码的过程中发现了设计上的问题时,要向上追溯到系统设计书程序设计书。不可轻易地判断,而应经设计者确认。(4)关于数据库的记录规范等的包含文件、模块头、宏等,要采用系统统一的规定。个人不可随意地制作。否则就会为以后修改、改造造成困难。(5)在编码结束后,要对编码重查。不可未经充分的重查而随便进入下一步测试阶段。编码重查作为最简便的故障检查手段,也是非常有效的手段,有时可以检查出在试验工程中不能全部检查出的复杂的错误。3.编码风格编码的目标首先是清晰正确,其次才是程序的效率。以下是在编程时应遵守规则。(1)合理使用goto语句。合理使用goto语句可以提高代码的运行效率,但goto语句的使用会破坏程序的结构特性,因此要限制使用的范围。(2)用括号体现优先级和嵌套的层次。用括号体现优先级和嵌套的层次可使程序更清晰,并且能够有效地避免二义性。(3)利用标准书写格式提高程序的可读性。a 用分层缩进显示嵌套结构的层次。b 每行只写一条语句。c 在注释段的周围加边框。d 在注释段与程序段以及不同程序段之间插入空行。(4)命名规则。命名应有实际意义,一般格式为:前缀+由形容词、名词或动词组成的词组。前缀由使用的语言决定。(5)适当的注释。适当的注释能提高程序的可读性,但过多的注释不但不能提高程序的可读性,还会降低效率,因此注释一定要适当。注释分为序言性注释和功能性注释两种。在文件头、模块头、函数和过程的头部的注释属于序言性注释。包括以下几部分内容:a 功能描述。对所执行的功能进行简略的介绍。b 接口描述。简述各输入参数和返回值。c 数据描述。简述用到的重要变量、结构和文件等。d 履历描述。包括设计者、日期和版本,文件头还包括版权声名。功能性注释嵌在源程序内部用来描述处理功能。(6)输入数据的检查。所有输入数据都应经过检查。(7)变量使用前要赋初值。(8)错误处理。一定要对可能出现的错误进行处理,以避免故障引起停机。4.序言性注释格式(头注释)头注释可以大致分为文件注释、模块注释、数据注释等。在写注释时推荐使用以下格式。(1) 文件注释(文件头),文件注释记述以下信息 (a)文件识别信息 系统名(主模块时) 程序名或模块名 版本信息(包括时间) 所属(从属模块时) 担当 著作权声明(b)文件说明信息 简介 功能说明(主要模块说明) 操作环境H/W,PLATFORM,OS,MEMORY等 编译、连接信息make file名,命令过程文件名,编译、连接选项(Option),应连接的装配模块文件名,子程序库名等(c) 文件维护信息版本,日期,作者所属部门名,作者姓名,补充说明等 创建信息 更改记录(d)其它 系统使用说明(主模块时) 注意事项 文件管理工具的附加信息需要特别说明的信息 SYSTEM PROGRAM/MODULE VERSION MASTER MODULE AUTHOR COPYRIGHT ABSTRACT/PURPOSE FUNCTION ENVIRONMENT MAKE OPTION CREATE UPDATE USAGE NOTE SPECIAL INFO说明:“”表示标准项目,“”表示可选项目。(2) 模块注释(模块头)。模块注释对了解模块的概要非常有效,而且在维护时也同样有效,所以一定要记述。模块注释记述以下信息 模块名 模块编号 版本信息 简介 功能说明 影响 注意事项 返回值 参数说明 担当 创建信息 更改记录 MODULE ID VERSION ABSTRACT FUNCTION SIDE-EFFECT NOTE RETURN ARGUMENT AUTHOR CREATE UPDATE说明:“”表示标准项目,“”表示可选项目。(3) 数据注释数据注释用来帮助对数据结构或数据表、数组等内容的理解。 标识符名(用于标识符定义) 数据结构名称 数据类型 简介 注意事项 TAG DATA DATA-TYPE ABSTRACT NOTE说明:“”表示标准项目,“”表示可选项目。附录: 头注释样例以下为C语言源文件的注释样例1. 主模块文件头(程序的主模块,生成命令程序。)/*/*/* 系统: 系统名 */* 用户: 用户名 */* 程序: 程序名 - 标题 */* 担当部门: XXXX*/* YYYY*/* (C)Copyright Shenyang NETS integration Corporation 1996*/* All Rights Reserved. */*/* VERSION DATE BY CHANGE/COMMENT*/* VX.00 YY-MM/DD 姓名 Create*/* VX.XX YY-MM/DD 姓名 更改 概要、更改理由*/*/* 功能概略:功能概略 */* 异常处理:异常处理 */* 调用方法: */* 程序名 Arg1 Arg2 */* 参数说明: */* I/0 参数名 内容 */* I Arg1 内容说明 */* I Arg2 内容说明 */* 适用计算机:计算机类型、型号 */* OS: OS名称(版本) */* 大小: 内存 MB */* 交换 MB */* 编译: 编译系统名称(版本) */* 连接信息: 连接信息 */*/*/* 请注意:未经许可,不可擅自使用、转载本内容的一部分或全部。*/*/*/2. 模块文件头(从属模块)/*/*/* 系统: 系统名 */* 用户: 用户名 */* 模块: 模块名- 标题 */* 所属: 主模块名或程序名 */* 担当部门: XXXX */* YYYY */* (C)Copyright Shenyang NETS Integration Corporation 1996 */* All Rights Reserved. */*/* VERSION DATE BY CHANGE/COMMENT */* VX.00 YY-MM/DD 姓名 Create */* VX.XX YY-MM/DD 姓名 更改概要、更改理由 */*/* 功能概略:功能概略 */* 异常处理:异常处理 */* 调用顺序: */* int I1 */* : */* char 01 */* sts = (&I1,.,&01); */* 参数说明: */* I/0 变量名 内容 */* I I1 内容说明 */* : */* I 01 内容说明 */* 0 STS 内容说明 */* 适用计算机:计算机类型、型号 */* OS: OS名称(版本) */* 编译: 编译系统(版本) */* 连接信息: 连接信息 */*/* 请注意:未经许可,不可擅自使用、转载本内容的一部分或全部。*/*/3. 文件头例/* * Copyright 1994-1995 Microsoft Corporation. All Rights Reserved. *PROGRAM:winprog.c * *PURPOSE:Windows program. * *PLATFORMS:Windows 95 * *FUNCTIONS: *WinMain() - calls initialization function, processes message loop *InitApplication() - Initializes window data nd registers window *InitInstance() -saves instance handle and creates main window *MainWindProc() Processes messages *About() - Process menssages for About dialog box */4. 模块头1/* * MODULE: main *VERSION: 1.1 *ABSTRACT: main function of program *FUNCTION: function of main *ARGUMENT: * argccount of command line argument * argvcommand line argument *RETURN: * 0normal end * 1abnormal end *SIDE-EFFECT: *NOTE: *CREATE: 96-07Nets1 *UPDATE: 96-08Nets2 * the reason *UPDATE: 96-09Nets3 */5. 模块头2/*/* */* 模块: 模块名 - 标题 */* 功能概略: 功能概略 */* */*/6. 类型声明/* * TAG: DemoStruct *ABSTRACT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 回收手机商务合同范本
- 房屋租赁合同范本版
- 阀门长期供货合同范本
- 厂房货物承揽合同范本
- 会员入会合同范本
- 游园项目合作合同范本
- 学校课桌采购合同范本
- 高空外墙施工合同范本
- 营销保密合同范本
- 月租酒店转租合同范本
- 2025年教师招聘小学语文真题及答案
- 2025年(完整版)十八项核心制度培训考核试题(含答案)
- 2025年低压电工理论考试1000题(附答案)
- 2025年益阳市融资担保有限责任公司招聘考试笔试试卷【附答案】
- 【湖南】2025年高考湖南卷化学高考真题+答案
- 2025年中国LCP料数据监测报告
- DGTJ08-2093-2019 电动汽车充电基础设施建设技术标准 含2021年局部修订
- 民政知识教学课件
- DB1301∕T494-2023 城市非机动车停放设施建设及管理规范
- KET教学课件新版
- 乳房恶性肿瘤放疗护理查房
评论
0/150
提交评论