防错程序设计.PPT

防错程序设计

第14章 软件开发基础 引言 14.1 软件开发技术的发展 14.2 软件生存周期 2.开发阶段 开发阶段要完成“设计”和“实现”两大任务。其中“设计”任务用需求分析、概要设计和详细设计三个阶段完成;“实现”任务由编码和测试两个阶段完成。 14.3 编码 在软件开发过程中涉及使用程序设计语言的一个主要阶段就是编码阶段,因此,这里将进一步介绍编码阶段应考虑的一些主要主要问题。 14.3.1 程序设计语言的选择 编码的目的是为了指挥计算机按设计者的想法工作,即,使用选定的程序设计语言,把模块过程描述翻译为用程序设计语言书写的源程序。 目前的程序设计语言种类越来越多。开发软件系统时必须做出的一个重要抉择是,使用什么样的程序设计语言实现这个系统。适宜的程序设计语言能使编码容易、程序测试量少、程序阅读和维护容易。由于软件系统的绝大部分成本用在生命周期的测试和维护阶段,所以易测试和易维护尤其重要。可以参照以下标准来选择语言。 1)语言的特点。除了一些特殊的场合外,多数情况下,使用高级语言编写程序比使用低级语言具有明显的优势。用高级语言编写程序效率高,程序的可阅读性、可测试性、可调试性和可维护性强。选择语言还要考虑语言本身是否有较理想的模块化编程机制,编写出的程序是否可读性好,是否有良好的独立编译机制等。 2)任务的需要。所选择的语言能否实现任务所规定的全部功能,执行效果如何,与其他语言相比有何优势,用该语言开发出的软件是否能垮平台运行、是否便于维护等。 3)人的因素。如果是在做一项比较紧急的任务,开发人员所精通的语言通常是他的首选语言。如果他所熟悉的语言不适合用来完成规定的任务,那么要考虑到学习一门新的语言需要多长时间。另外,如果所开发的系统由用户自己负责维护,通常应该考虑选择用户熟悉的语言。 4)工作单位的因素。开发人员所在工作单位可能仅仅有一两个编译器的许可证,这样,就可能使用具有许可证的编译器所支持的语言来编写程序。 14.3.2 编写程序的基本原则 随着软件规模增大,复杂性增加,人们逐渐认识到,在软件生存期中需要经常阅读程序,特别是在软件测试阶段和维护阶段。因此要求程序要有较好的可读性。良好的编码风格能在一定程度上弥补语言存在的缺陷,而如果不注意编码风格就很难写出高质量的程序。尤其当多个程序员合作编写一个很大的程序时,需要强调良好而一致的编码风格,以便相互通信,减少因不协调而引起的问题。总之,良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量。 1.按一定规则给符号命名 各种标识符的名字应能反映它所代表的实际东西,使人能够顾名思义,有助于对程序功能的理解,增强程序的可读性。 3.采用统一的、标准的书写格式 用分层缩进的写法显示嵌套结构层次。 在注释段周围加上边框。 注释段与程序段、以及不同的程序段之间插入空行。 每行只写一条语句。 书写表达式时适当使用空格或圆括号作隔离符。 4.采用统一的数据说明风格 数据说明的次序应规范。例如,按常量说明、简单变量类型说明、数组说明等固定的次序,这将有利于测试、排错和维护。 在类型说明中还可进一步规范。例如,在说明变量时,可按如下顺序排列:整型量说明、实型量说明、字符量说明、布尔型量说明等。 当用一个语句说明多个变量名时,应对变量按字母顺序排列。 5.使用标准的语句结构 要尽量使用标准的控制结构。要遵循模块逻辑中采用单入口、单出口标准结构的原则,以确保源程序清晰可读。尽量少用或不用GOTO语句。 8.应当把程序的可读性放在首位 为了减少出错的可能性,提高测试与维护的效率,应把程序的可读性放在首位。程序编写要做到可读性第一,效率第二,不要为了追求效率而丧失了可读性。事实上,程序效率的提高主要应通过选择高效算法来实现,而不是通过对程序代码的某些语句进行优化(尽管这有时也会提高一些效率)。 不要修补不良的程序,要重新编写;也不要片面地追求代码的复用,要重新组织。 利用信息隐藏技术,确保每一个模块的独立性。 对太大的程序,要分块编写、测试,然后再集成。 注意计算机浮点数运算的特点。尾数位数一定,则浮点数的精度受到限制。 避免不恰当地追求程序效率,在改进前,要作出有关效率的定量估计。 确保所有变量在使用前都进行初始化。 遵循国家标准。 选择不同的程序设计语言,还应该根据语言的特点注意一些特殊问题。 10.输入输出 输入输出信息是与用户的使用直接相关的。输入输出的方式和格式应当尽量做到对用户友好,尽可能方便用户的使用。在设计和程序编码时应考虑下列原则: 对所有的输入数据都进行检验,从而识别错误的输入,以保证每个数据的有效性。 检查输入项的各种重要组合的合理性,必要时报告输入状态

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档