[理学]第七章实现.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第七章实现

CH7 实现 通常把编码和测试称为实现 编码:设计结果翻译为代码 测试概念:为了发现软件中存在的问题 测试类型:单元测试、集成测试、综合测试等,测试工作量占40%左右 (5)数据结构的复杂性:要根据不同语言构造数据结构类型的能力选取合适的语言。 (6)软件开发人员的知识水平以及心理因素。 知识水平包括: 专业知识,程序设计能力。 心理因素:如对某种语言或工具的熟悉程度。受外界的影响(盲目追求高、新)。 7.1.1 程序设计语言 一、程序设计语言的分类 1.机器语言(Machine Language) 机器语言,是一种用二进制代码表示的低级语言,是计算机直接使用的指令代码。机器语言没有通用性、不能移植、因机器而异,因为处理机不同指令系统就不同。 用机器语言编写程序,都采用二进制代码形式,且所有的地址分配都以绝对地址的形式处理,存储空间的安排、寄存器、变址的使用也都由程序员自己计划。 7.1.1 程序设计语言 2.汇编语言(Assemble Language) 汇编语言,是一种使用助记符表示的低级语言。某一种汇编语言也是专门为某种特定的计算机系统而设计的。用汇编语言写成的程序,需经汇编程序翻译成机器语言程序才能执行。 汇编语言中的每条符号指令都与相应的机器指令有对应关系,同时又增加了一些诸如宏、符号地址等功能。虽然这种语言的命令比机器语言好记,但它并没有改变机器语言功能弱、指令少、繁琐、易出错、不能移植等的缺点。 7.1.1 程序设计语言 3.高级语言(High level Language) 高级语言是面向用户的、基本上独立于计算机种类和结构的语言。高级语言最大的优点是:形式上接近于算术语言和自然语言,概念上又接近于人们通常使用的概念。 高级语言的一个命令可以代替几条、几十条甚至几百条汇编语言的指令,因此,高级语言易学易用,通用性强且应用广泛。 7.1.1 程序设计语言 4.第四代语言(Fourth Generation language,简称4GL) 第四代语言(4GL)的出现,将语言的抽象层次又提高到一个新的高度。第四代语言虽然也用不同的文法表示程序结构和数据结构,但第四代语言是在更高一级抽象的层次上表示这些结构。用第四代语言编码时只需说明“做什么”,而不需描述算法细节。 7.1.1 程序设计语言 二、程序设计语言的特点 1.名字说明 2.类型说明 3.初始化 4.程序对象的局部性 5.程序模块 6.循环控制结构 7.分支控制给构 8.异常处理 9.独立编译 7.1.2 编码风格 编码风格实际上是一种编码原则。从20世纪70年代以来,编码的目标从强调效率转变到强调清晰。与此相应,编码风格也从追求“聪明”和“技巧”,变为提倡“简明”和“直接”。人们逐渐认识到,良好的编码风格能在一定程度上弥补程序设计语言存在的缺点。反之,如果不注意编码风格,即使使用了结构化的现代语言,也很难写出高质量的程序。 7.1.2 编码风格 变量名的选择 7.1.2 编码风格 表达式的书写 表达式的书写 If语句 布尔变量的正确使用。 if (flag) // 表示flag为真 if (!flag) // 表示flag为假 整型变量与零值比较 ,应当将整型变量用“==”或“!=” 直接与0比较。 应当将指针变量用“==”或“!=”与NULL比较。 不可将浮点变量用“==”或“!=”与任何数字比较。 应该设法转化成“=”或“=”形式。 If语句 if(condition) return x; return y; 循环语句 在多重循环中,注意循环层次,以减少CPU跨切循环层的次数。 循环语句 如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层。例 (b)的效率比(a)的高。 循环语句 不可在for 循环体内修改循环变量,防止for 循环失去控制 。 建议for语句的循环控制变量的取值采用“半开半闭区间”写法。 switch语句 每个case语句的结尾不要忘了加break,否则将导致多个分支重叠(除非有意使多个分支重叠)。 不要忘记最后那个default分支。即使程序真的不需要default处理,也应该保留语句 default : break; GOTO语句的使用 goto语句可以灵活跳转,但是经常带来错误或隐患。它可能跳过了某些对象的构造、变量的初始化、重要的计算等语句。 在处理例外时,用goto语句从多重循环体中一下子跳到外面,用不着写很多次的break语句。 其他(1) 当心那些视觉上不易分辨的操作符发生书写错误。 (“==” 与 “=”, “||”、“”、“=

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档