软件工程课本讲解第4章程序编码

软件工程课本讲解第4章程序编码

ID:42719126

大小:535.56 KB

页数:115页

时间:2019-09-21

软件工程课本讲解第4章程序编码_第1页
软件工程课本讲解第4章程序编码_第2页
软件工程课本讲解第4章程序编码_第3页
软件工程课本讲解第4章程序编码_第4页
软件工程课本讲解第4章程序编码_第5页
资源描述:

《软件工程课本讲解第4章程序编码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、程序编码编码阶段的任务结构化程序设计程序设计风格程序效率程序复杂性度量做为软件工程过程的一个阶段,程序编码是设计的继续。程序设计语言的特性和程序设计风格会深刻地影响软件的质量和可维护性。为了保证程序编码的质量,程序员必须深刻理解、熟练掌握并正确地运用程序设计语言的特性。此外,还要求源程序具有良好的结构性和良好的程序设计风格。4.1编码阶段的任务模块的过程性描述(不可执行的)源程序(可执行的)编码二.源程序要求正确可靠、简明清晰、效率高。1.源程序的正确性是对程序质量的最基本要求;2.源程序的简明清晰,才便于验证源代码和模块规格说明的

2、一致性,容易进行测试和维护;3.源程序的清晰与效率之间常存在矛盾,要求清晰性好的程序一般效率较低,而要求效率高的程序一般清晰性较差。对于大多数模块,编码时应该把简明清晰放在第一位。4.除了编码阶段产生源代码外,在测试阶段也需要编写一些测试程序,用于对软件的测试。一.编码的目的:使用选定的程序设计语言,把模块的过程性描述翻译为用语言书写的源程序(源代码)。补充:程序设计语言的发展(1)面向机器的语言高级语言(第三代)甚高级语言机器语言(第一代)汇编语言(第二代)基础语言专用语言现代语言第四代语言二.面向机器的语言包括第一代机器语言和第

3、二代汇编语言。这两种语言都依赖于计算机结构,其指令系统随机器而异。为它所支持的计算机独有。该语言编程效率低、容易出错,且维护困难。一.程序设计语言的发展按软件工程的观点,语言的发展大致可分为四代、三个阶段。如图:语言主要应用及优点不足之处BASICFORTRANCOBOLALGOL语言随着Pascal语言的问世,也被新语言取代。用于一般数值计算与事务处理。简单易懂、具有交互性,是初学者学习程序设计语言的入门语言。早期版本不支持结构程序设计,解释执行速度慢,不适用于大的软件开发。新版本有较大改进。主要用于科学计算。新版本在支持结构化控

4、制和字符串处理方面有较大改进。数据类型不丰富,对复杂的数据结构缺乏支持。商业数据处理。广泛支持与事务数据处理有关的各种过程技术。近似自然语言,易于理解。计算功能弱,编译速度不快。三.高级语言:不依赖于实现它的计算机,它使用的概念和符号接近于自然的语言。按其特点分为三类:1.基础语言:如BASIC、FORTRAN、COBOL、ALGOL等。该类语言历史久、流传广,且有用它们开发的大量软件,它们的版本不断进行改进,现今仍被广泛的使用。语言主要特征及应用PascalCAda科学计算、数据处理及系统软件开发。模块清晰、控制结构完备,有丰富的

5、数据类型和数据结构,表达能力强,易于移植。但不支持大型软件的开发和设计,有希望成为微机和小型机上的软件开发语言。具有结构化语言的公共特征,表达简洁、控制结构与数据结构完备,移植力强、编译质量高。不仅能写出效率高的应用软件,也适用于编写OS、编译程序等系统软件。如UNIX中90%以上的代码是C语言。面向过程的现代语言,适用于一切“嵌入式计算机系统”除具有许多经典语言的特征外,还包含许多新特征。支持并发处理与过程间通信,支持异常处理中实施中断及只能由汇编语言实现的低级操作等。在语言的表达与结构上又具有高级语言特点,远比汇编语言易于开发和

6、维护。它是第一个充分体现软件工程思想的语言,它既是编码语言,又可用作设计表达工具。2.现代语言:如PASCAL、C、Ada等;它们都支持结构化的控制结构,具有很强的过程结构和数据结构能力,因此也称为结构化语言(structuredlanguage)。3.专用语言基础语言与现代语言都属于通用语言。专用语言不同,它是为某一特定的应用专门设计的语言。例如:(1)专用于处理数组和向量的APL语言;(2)数控机床用的APT语言;(3)适用于微处理器开发的FORTH语言;(4)适用于处理符号和表达式的LISP语言等。从软件工程的角度看,这类语言

7、仅支持特殊的应用,把软件需求转换为设计,再从设计转换为实现,较通用语言容易。但它们的可移植性与可维护性都不及通用语言。语言第三代语言第四代语言特征面向目的基础支持过程化语言。非过程化语言。面向过程,说明“怎么做”。面向应用,说明“做什么”。高效的实现各种算法。直接地实现各类应用系统。着重算法描述,一次仅处理一个记录或数据元素。以数据或知识为基础,以对集合的处理代替对于单元记录或元素的处理。不支持对大量共享数据的处理。支持对大型数据库的高效处理。四.第四代语言1.第三代语言(3GL)与第四代语言(4GL)的区别。2.第四代语言(4GL

8、)应具备的特征(1)具有很强的数据管理能力,能对数据库进行有效的存取、查询和其它有关操作;(2)能提供一组高效的、非过程化的命令,组成语言的基本语句。编程时用户只需用这些命令说明“做什么”,不必描述实现的细节;(3)能满足多功能、一体

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。