软件开发流程-程序编码
2014-04-28 18:22:07 访问:
一、软件编码-简介
随着软件产品的功能增添和版本的提高,代码越来越庞杂,源文件也越来越多, 对济南软件开发人员来说,除了保证程序运行的正确性和提高代码的运行效率之外,规范风格的编码会对软件的升级、修改、维护带来极大的方便性,也保证程序员不会陷入“代码泥潭”中无奈自拔。开发一个成熟的软件产品,除了有详细丰盛的开发文档之外,必需在编写代码的时候就井井有条,过细谨严。
以下的编码标准包括了程序排版、解释、命名、可读性、变量、程序效力、品质保障、代码编译、代码测试跟版本把持等留神事项。
二、编码规则-排版要求:
1.要害词和操作符之间加适当的空格。
2.绝对独破的程序块与块之间加空行
3.较长的语句、表达式等要分成多行书写。
4.划分出的新行要进行适应的缩进,使排版整洁,语句可读。
5.长表达式要在低优先级操作符处划分新行,操作符放在新行之首。
6.循环、判断等语句中若有较长的表白式或语句,则要进行适应的划分。
7.若函数或进程中的参数较长,则要进行恰当的划分。
8.不容许把多个短语句写在一行中,即一行只写一条语句。
9.函数或过程的开端、结构的定义及循环、判断等语句中的代码都要采取缩进风格。
10.C/C++语言是用大括号‘{’和‘}’界定一段程序块的,编写程序块时‘{’和‘}’应各独有一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。
三、编码规则-注释注意事项
1.注释要简略明了。
2.边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。
3.在必要的处所注释,注释量要适中。注释的内容要明白、明了,含义精确,防止注释二义性。坚持注释与其描述的代码相邻,即注释的就近原则。
4.对代码的正文应放在其上方相邻地位,不可放在下面。
5.对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注解应放在此域的右方;统一构造中不同域的注释要对齐。
6.变量、常量的注释应放在其上方相邻位置或右方。
7.全局变量要有较具体的注释,包括对其功能、取值规模、哪些函数或过程存取它以及存取时注意事项等的阐明。
8.在每个源文件的头部要有必要的注释信息,包含:文件名;版本号;作者;天生日期;模块功能描写(如功能、重要算法、内部各局部之间的关系、该文件与其它文件关系等);主要函数或过程清单及本文件历史修改记载等。
9.在每个函数或过程的前面要有必要的注释信息,包括:函数或过程名称;功能描述;输入、输出及返回值说明;调用关系及被调用关系说明等。
四、编码规则-命名方法
1.较短的单词可通从前掉“元音”构成缩写;
2.较长的单词可取单词的头多少发符的优先级,并用括号明确抒发式的操作次序,避免使用默认优先级。
3.使用匈牙利表现法
五、编码规则-可读性方面
1.避免使用不易理解的数字,用有意思的标识来替换。
2.不要使用难懂的技能性很高的语句。
3.源程序中关系较为严密的代码应尽可能相邻。
六、编码规则-变量设置
1.去掉没必要的公共变量。
2.构造仅有一个模块或函数可以修改、创建,而其余有关模块或函数只访问的公共变量,防止多个不同模块或函数都可以修改、创建同一公共变量的现象。
3.细心定义并明白公共变量的含意、作用、取值范畴及公共变量间的关系。
4.明确公共变量与操作此公共变量的函数或过程的关系,如拜访、修正及创立等。
5.当向公共变量传递数据时,要非常警惕,防止赋与分歧理的值或越界等景象产生。
6.预防局部变量与公共变量同名。
7.仔细设计结构中元素的布局与排列顺序,使结构容易懂得、节俭占用空间,并减少引起误用现象。
8.结构的设计要尽量斟酌向前兼容和当前的版本进级,并为某些将来可能的利用保存余地(如预留一些空间等)。
9.留心详细语言及编译器处理不同数据类型的原则及有关细节。
10.严禁使用未经初始化的变量。申明变量的同时对变量进行初始化。
11.编程时,要注意数据类型的强迫转换。
七、编码规则-函数、过程
1.函数的范围尽量限度在200行以内。
2.一个函数最好仅实现一件功能。
3.为简单功能编写函数。
4.函数的功能应当是能够猜测的,也就是只有输入数据相同就应发生同样的输出。
5.尽量不要编写依附于其余函数内部实现的函数。
6.避免设计多参数函数,不使用的参数从接口中去掉。
7.用注释详细解释每个参数的作用、取值范围及参数间的关系。
8.检讨函数所有参数输入的有效性。
9.检查函数所有非参数输入的有效性,如数据文件、公共变量等。
10.函数名应正确描述函数的功能。
11.避免使用无意义或含义不清的动词为函数命名
12.函数的返回值要清晰、明了,让使用者不轻易疏忽过错情形。
13/明确函数功能,准确(而不是近似)地实现函数设计。
14.减少函数本身或函数间的递归调用。
15.编写可重入函数时,若使用全局变量,则应通过关中止、信号量(即P、V操作)等手段对其加以维护。
八、编码规则-可测性
1.在编写代码之前,应预先设计好程序调试与测试的方式和手腕,并设计好各种调测开关及相应测试代码如打印函数等。
2.在进行集成测试/系统联调之前,要结构好测试环境、测试项目及测试用例,同时仔细剖析并优化测试用例,以进步测试效率。
九、编码规则-程序效率
1.编程时要常常注意代码的效率。
2.在保证软件系统的正确性、稳定性、可读性及可测性的条件下,提高代码效率。
3.不能一味地寻求代码效率,而对软件的准确性、稳定性、可读性及可测性造成影响。
4.编程时,要随时留意代码效率;优化代码时,要考虑周全。
5.要仔细地构造或直接用汇编编写调用频繁或机能要求极高的函数。
6.通过对系统数据结构划分与组织的改良,以及对程序算法的优化来提高空间效率。
7.在多重循环中,应将最忙的循环放在最内层。
8.尽量减少循环嵌套档次。
9.防止轮回体内含判定语句,应将循环语句置于断定语句的代码块之中。
10.尽量用乘法或其它办法取代除法,特殊是浮点运算中的除法。
十、编码规则-质量保证
1.在软件设计过程中构筑软件质量。
代码质量保证优先准则
(1)正确性,指程序要实现设计要求的功能。
(2)稳固性、保险性,指程序稳定、牢靠、平安。
(3)可测试性,指程序要存在良好的可测试性。
(4)规范/可读性,指程序书写作风、命名规矩等要合乎规范。
(5)全局效率,指软件系统的整体效率。
(6)部分效率,指某个模块/子模块/函数的自身效率。
(7)个人表达方法/个人方便性,指个人编程习惯。
2.只引用属于本人的存贮空间。
3.防止引用已经开释的内存空间。
4.过程/函数中调配的内存,在过程/函数退出之前要释放。
5.过程/函数中申请的(为打开文件而使用的)文件句柄,在过程/函数退出前要封闭。
6.防止内存操作越界。
7.时刻注意表达式是否会上溢、下溢。
8.当真处置程序所能碰到的各种犯错情况。
9.体系运行之初,要初始化有关变量及运行环境,避免未经初始化的变量被援用。
10.系统运行之初,要对加载到系统中的数据进行一致性检查。
11.严禁随意更改其它模块或系统的有关设置和配置。
12.不能随便转变与其它模块的接口。
13.充足懂得系统的接口之后,再使用系统供给的功效。
14.要时刻注意易混杂的操作符。当编完程序后,应从头至尾检查一遍这些操作符。
15.不使用与硬件或操作系统关联很大的语句,而使用倡议的尺度语句。
16.提议:使用第三方提供的济南软件开发工具包或控件时,要注意以下几点:
(1)充分了解运用接口、使用环境及使用时注意事项。
(2)不能过火信任其正确性。
(3)除非必要,不要使用不熟习的第三方工具包与控件。
十一、编码规则-代码编译
1.编写代码时要注意随时保留,并按期备份,防止因为断电、硬盘破坏等起因造成代码丧失。
2.同一名目组内,最好使用相同的编纂器,济南IOS开发,并使用雷同的设置选项。
3.公道地设计软件系统目录,便利开发职员应用。
4.翻开编译器的所有告警开关对程序进行编译。
5.在同一项目组或产品组中,要同一编译开关选项。
6.使用工具软件(如Visual SourceSafe)对代码版本进行保护。
十二、编码规则-代码测试、维护
1.单元测试请求至少到达语句笼罩。
2.单元测试开始要跟踪每一条语句,并察看数据流及变量的变更。
3.清算、收拾或优化后的代码要经由审查及测试。
4.代码版本升级要经过严厉测试。