《2022年程序员编码要求 .pdf》由会员分享,可在线阅读,更多相关《2022年程序员编码要求 .pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、湖北国际软件外包人才培养基地程序编码通用要求1程序编码通用要求程序员应遵守如下编码要求。1 界面设计部分1.1界面的总体原则1.2必须显示公司名称、系列软件名称、版本号、版权等相应内容。(主要是启动画面)1.3整体界面必须符合一般Windows 风格或流行的界面标准。1.4同一系列产品的总体风格应一致。(比如:登录,按钮名称,图标样式等等)。1.5主菜单、子菜单、弹出菜单以及窗口中的按钮(除“确定”、 “取消”按钮外)都必须设置快捷方式。 (菜单快捷方式包括键盘快捷键喝系统快捷键都要有,对于用户常用的功能提供系统快捷键。 )1.6必须使所有功能都能被鼠标、键盘所访问(尤其是键盘)。 (ESC
2、键退出对话框,在输入信息时,回车、Tab 键自动到下一输入项。 )1.7尽量提供鼠标右键功能,方便用户操作。2控键的位置2.1重要或频繁访问的元素应当放在显著的位置上。2.2位置必须符合用户的视觉习惯(从左到右,从上到下)。2.3必须按照信息和功能按逻辑分组。2.4按钮的位置必须与界面其他控键保存位置上的对应,上下保持对称,左右与第一行控键水平。3界面元素3.1相同类型、相同功能的窗体必须保持一致性:类型、尺寸、背景、颜色。3.2在同一个系列的软件中相同类型的控键应保持一致性:尺寸、颜色、字体、标题、内容(标准按钮的长度XXX ,高度 YYY ) 。3.3在同一个系列的软件中,所有的表格、单元
3、格应保持一致(标准单元格大小为高0.YYcm ,宽 X.Xcm ) 。3.4分组的一致性: 按照相应的业务分类进行控键的分组,以便于用户按照分组进行操作:同时也使得界面减少冗余内容。(比如关闭,确定、取消等按钮应该与增加、修改、删除按钮分开等等) 。3.5各菜单项的名称必须合理,不应引起理解的二义性。3.6对应窗口上的名称(caption)必须与各菜单项的名称一致。(对于二次窗口的caption名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - -
4、- - - - 湖北国际软件外包人才培养基地程序编码通用要求2命名方法, 可参考: 比如主菜单中用户设置中增加对话框的caption 为“用户设置增加” ,以此类推) ;3.7当信息在一屏内无法完全显示,必须加上滚动条,且符合Windows 标准(即当显示的内容超过显示位置的时候)。3.8软件中菜单和控件,必须按照相应的操作用户以及当前的状态进行控制隐现,保证用户能够根据相应的菜单和控件的颜色,判断当前允许的操作。3.9凡是单击菜单项目能够反映对话框的,都应在相应菜单后用省略号表示:凡是在该菜单还有子菜单的,应在该菜单后用三角形表示。3.10 控键状态的缺省值应按照符合相应制度的、用户使用频繁
5、的、达到相应控制的选项进行设置(不清楚的,可按照详细设计的要求)。3.11 应都有输入字符类型和长度的限制,且在非法操作后,确定,应及时提示。3.12 所有输入框的显示的长度必须与输入且能保存的长度匹配(不应过长或过短) ,并且注意不同字符集的内容。3.13 有记录 list 和修改功能的对话框中必须提供鼠标双击list 代表修改的功能。3.14 动感:控键的选取与执行应该有清楚的体现。4空白空间的使用4.1控键间要有适当的空白空间。4.2控键间隔一致,垂直和水平方向向上对齐。5保持界面的简明5.1控键安排简单、有效、便于用户使用。5.2资料的版面排列应整齐美观,显示正确。能明显区分上下资料。
6、避免在同一界面上存放太多的控键,保持界面的清爽。6颜色6.1一般采用柔和、中性化色彩。(一般情况下使用Windows 或是 Office 惯用颜色,即蓝,白,灰。)6.2尽量限制程序所用颜色,保持色调一致。6.3软件的分辩率设置应同一使用800*600 ,颜色使用增强16 色。6.4设计时应考虑到色盲用户的特殊情况,减少相应的过于鲜艳的色彩。6.5所有的查询均应使用黑底白字,在计算结果中用粗体表示着重。7图标名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - -
7、 - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求37.1在已有标准的图标图像的情况下,必须使用标准的图标图像(新建、打开、保存、预览、打印、剪切、复制、粘贴、删除、字体、检索、退出等)。7.2特殊项目中,应根据用户的实际需求选用与相应的业务符合的、合理的图像与图标。(若是 Graphics 目录中的图标不尽合理,可以寻求美工的帮助)7.3图表的设计应合理且简洁生动美观,主题鲜明。7.4图标都应有tiptext,内容一般情况下与该功能在菜单中的名称一致,必要的时候可以加以祥述,但字数不宜过长。8光标8.1光标的形状应随不同的状态改变不同的形状。8.2对执行完成所需时间较
8、长的操作应改变鼠标状态或提供状态(进程条)显示表示执行状况。9字体9.1字体、大小应保持一致,在目前的产品系列中:界面的菜单、按钮、快捷按钮、图标等固定内容,字体必须采用宋体9 号字;界面中的列标显示内容,默认使用宋体12 号字。10可用性设计10.1 功能的可发现性10.1.1用户能在无须查看帮助的情况下了解功能、完成操作。10.1.2菜单排列,一般情况Windows 或是 Office 惯用顺序,牵涉到业务的菜单功能必须按照业务顺序排列。10.2 当用户或系统出错时与用户交互。10.3 创建容易理解的对话框10.3.1使用一般用户就能理解的语言来描述问题的关键。10.3.2使用标准类型的对
9、话框,在以下所列出的情况下(!警告:删除、修改后没有保存退出,内存不足caption 为警告?帮助,询问:caption 为帮助,询问i 提问:一般提示、操作信息caption 为提示) 10.3.3不输入任何数据直接保持,应提示“没有可保存的记录”。10.3.4修改资料后退出或是关闭,应提示“资料已修改,是否覆盖远记录?”10.3.5要注意关键值相同的现象,不允许有重复的记录时应有相应的提示。10.3.6查询时,若不满足基本的查询条件,应不允许查询。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - -
10、- - - 第 3 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求410.3.7删除或修改项目或内容时,应判断该项目是否有牵连的计算内容或已经使用的情况,若有则不允许删除或修改。10.3.8显示空记录时,应不允许操作(计算、打印等)。10.3.9在本机内进行存储时,当覆盖已有文件时,应提示“文件已存在,要替换吗?”。10.4 贴近用户的模式10.4.1帮助与文档10.4.1.1尽量使用用户顺序的语言老描述。10.4.1.2提供关键词、关键代码的快速查找功能。在重要窗口中提供帮助按钮。10.4.2提示10.4.2.1“这是什么”帮助10.4.2
11、.2提供标准的Windows 的“这是什么”帮助功能。10.4.3状态显示10.4.3.1对不能立即执行完成的功能提供状态显示表示执行状态(进度条、鼠标指针的变化) 。10.4.3.2当鼠标停留在某图形后图标上时应该显示描述功能的卷标。(三个点表示浏览的按钮应有 Tiptext“浏览”提示)10.4.4向导:对需长时间安装过程应该提供向导服务,停留时间间隔应短一点。11接口部分输入的实参个数必须等于形参的个数实参与形参的属性要匹配传入的实参顺序应该与形参相同值参不能改变定义的全局变量名不能与模块中的名称相同如果模块进行I/O 1 文件属性是否正确?2 打开 /关闭状态是否正确?3 格式规范是否
12、与I/O 状态匹配?4 缓冲区的大小是否匹配记录大小?5 文件是否在使用前打开?6 文件结束条件是否处理过?7 I/O 错误是否处理过?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求58 在才、输出错误中是否有任何原文字信息?12内部的数据结构不能存在以下错误:不正确的输入不正确的初始化或缺省值不正确的变量名不一致的数据类型上溢、下溢、地址冲突13错误处理必须采用一般用户就能理解的
13、语言来描述错误产生的错误应该与试图捕获的错误一致已经捕获到异常,由于处理不正确, 导致一系列错误,应该正确处理捕获到的异常错误的描述对最终确定错误所在应该提供足够的帮助信息14控制结构测试条件测试当判断条件为真或假时,程序运行都应该正常数据流测试单元的数据流应该符合系统设计的数据流循环测试当循环体第一次执行,中间某次执行,最后一次执行都应当运行正常15命名规范15.1 一般规范:程序中变量、对象、过程、函数的命名由前缀和有意义的具体名字部分组成。前缀指明作用范围,类型和其它指定的含义,且均为小写。具体名字部分一般由有意义的英文单词或英文单词缩写组成,且一般英文单词首字母大写,其它小写。15.2
14、 变量命名:变量名以小写字母为前缀表示变量的类型,例如:intCharacterCounter 说明此变量是一个整数( int) ,并表示是一个字符计数(CharacterCount) 。具体规定各前缀分别代表的变量类型如下:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求6前缀含义VB 定义举例bln 布尔型Boolean blnFound byt 单字节型Byte bytRast
15、erData cur 货币型currency curRevenue dbl 双精度型Double dblTolerance dtm 日期型Date(Time) dtmStart int 整形Integer intQuantity lng 长整形Long lngDistance obj 对象型Object objCurrent str 字符串型String strFName sng 单精度型Single sngAverage col 集合Collection colWidgets udt 自定义型User-defined type udtEmployee var Variant varCheck
16、Sum err Error errOrderNum 1用小写字符加下划线前缀表示变量的存在范围属性。例如:glngHDC说明此变量是全局变量(g) ,且是个长整形的句柄(lngHDC ) 。前缀含义无一般过程中的局部变量c const 常量s 静态变量m Form 中的局部全局变量,其它Form 中的过程无法调用p Form 中的全局变量,其它Form 可以调用g 全局变量2变量说明a在程序中必须对每一个变量进行类型声明,必须用Option Explict 选项进行强制声明。b 在程序中必须对每一个变量进行注释,以便以后代码的维护。c如果有双重的,优先级从上到下递减,例如:csOrder。名师
17、资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求715.3函数和过程1.命名规则a函数以小写字符前缀表示返回值的数据类型,再以fn_前缀开头,如果是全局函数用 gfn_前缀开头, 如果是 Form 中 Public 型的函数, 以 pfn_前缀开头。 例如: fn_intCount 表示记数函数Count,返回值为整形。b过程以 pd_前缀开头,全局过程以gpd_前缀开头。c函数和过程不
18、能用一些无关的单词命名。2.接口a再每个函数和过程开始的时候必须说明:b函数而后过程的作用。c出入口变量表。3.参数传递程序中参数传递的方式必须显示指明。在函数,过程内部直接带哦用外部的全局变量,或局部变量,在可行的情况下,必须采用参数传递。15.4对象(控键)命名1所有程序中使用到的控键必须命名,不可使用Text1,Text2 等等默认对象名。2使用三个字母代表控键类型控键(对象)前缀举例3D Panel pn1 pnlGroup Animated button ani aniMailBox Class cls Check box chk chkreadOnly ,3. 通常,菜单项的命名由
19、“前缀+菜单条 +菜单项”组成。则各菜单项命名如下:mnuFile mnuEdit mnuFileOpen mnuEditCopy mnuFileClose mnuEditCut mnuFileSeparatorOne mnuEditPaste mnuFileRecent mnuFileSepstatorTwo 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求8mnuFileExit
20、 4.一般情况禁止控键对象做参数传递。15.5 通用组件命名规范1在定义 Class, Active X 内部的属性名和方法名时不需要加前缀。2通用 Class XXXX_clsxxxx (其中 xxxx 为自定义)3通用 model XXXX_modxxxx (其中 xxxx 为自定义)4通用 Form XXXX_frmxxxx (其中 xxxx 为自定义)15.6 循环变量,和函数返回值定义如下:循环变量最外层为lngLi ,嵌套的依次为lngLj, lngLk , 。函数返回0 表示真,执行成功, -1 表示假,执行失败(专指异常错误),其余的错误号列表根据项目的不同情况由项目经理给出。
21、16编程规范(1)一个子系统应该具有以下的独立Model :用于定义系统使用的全局变量的Module;用于定义系统不涉及业务的公用函数、过程和代码的Module;用于定义系统常量的Module ;用于存放各相关业务的公用函数的若干个Module;用于存放样式文字信息(如错误号、错误提示信息等等)的Module 。(2)在定义公用函数、全局变量、常量、错误代码等时,必须报请项目经理或程序经理批准,定义后必须即时通知相关人员。(3)程序中的全局变量应尽量少用,使用全局变量要征得项目经理得同意,常量(不包括 SQL 语句)要先进行定义再使用。(4)代码的编写要使用缩进格式,每次缩进4 格,相当于ta
22、b 键,且最多不超过五层。(5)变量的定义不采用缩进格式,OnError 放在变量定义之后,也不缩进。(6)除错误处理外,不得使用GOTO 语句。(7)程序中所有定义的变量必须有注释。(8)对于复杂的算法,程序分支和循环处必须有注释。(9)程序实现中有简单算法的要尽量使用简单算法,少用或不用难以理解的复杂算法(如;递归)(10) 每个文件头上必须注明本文件中模块的总功能,作者,日期。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 11 页 - - - - - - - -
23、- 湖北国际软件外包人才培养基地程序编码通用要求9(11) 一般情况下尽量使用函数,不使用过程。(12) 函数的返回值不用TRUE, FALSE 而用 Long 型,对每一个返回值的含义要给予说明,并且对函数的每一个返回值程序都应该能正常运行下去。(13) 尽量不要采用Money 或 DateTime 数据类型定义变量。(14) 当修改别人代码时,尽量成块注释, 不要删除或在原代码处修改原作者的代码,由于这部分情况比较复杂,当拿不定主义时,可以向项目经理请示。17 函数和过程头部的注释要求。举例如下:* 函数 名: XXXXXXXX 功能: XXXXXXXXX 入口参数:返回 值:总重量作者:
24、 XXX 日期: 2001/XX/XX 模块标识 :SYSXXX-SUBXXX-MXXX * 修改记录:修改执行人:修改日期: 2001/XX/XX 修改注释: ,* 18 在模块代码行中修改的规定为了便于 追溯和进一步维护的需要,修改时应遵守如下要求:(1)将原代码行用注释方式标识,绝不能在原代码行上直接修改,或删除原代码;(2)将新的代码行紧接着写在原代码行的下面,并在该语句尾部写上注释,标明修改人和日期,必要时应写出修改的原因;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9
25、 页,共 11 页 - - - - - - - - - 湖北国际软件外包人才培养基地程序编码通用要求10软件配置计划执行表编制人:编制日期:年月日软件项目 /产品名称合同编号项目/产品委托单位签订日期开发设计部门项目负责人配置管理组长配置管理组成员预期运行环境硬件与网络:软件系统:开发环境硬件与网络:软件系统、开发工具:职责姓名代码工作任务职责姓名代码工作任务名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 11 页 - - - - - - - - - 湖北国际软件外包人
26、才培养基地程序编码通用要求11系统/子系统名称/模块名称标识系统设计人提交日期评审或测试人变更记录SYSxxx SUBxxx Mxxx ,设计文档名称版本号编写人提交日期评审人变更记录需求分析说明书系统设计说明书详细设计说明书系统操作手册,控制基线软件计划需求分析系统设计详细设计编码产品发布版本号发布授权人发布日期使用单位系统安装人安装情况,审核人:审核日期:批准人:批准日期:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 11 页 - - - - - - - - -