- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
出版社 理工分社 软 件 工 程 软件开发的最终目标,是产生能在计算机上执行的程序。编码就是把软件设计结果翻译成用某种程序设计语言书写的程序。作为软件工程过程的一个阶段,编码是对设计的进一步具体化,因此,程序的质量主要取决于软件设计的质量。但是,所选用的程序设计语言的特点及编码风格也将对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。 第6章 软件编码设计 * 6.1 编码设计的目的 编码的目的是:使用选定的程序设计语言,将软件的过程性描述(算法)翻译为该语言书写的程序(或源代码),然后在机器上运行,以达到预期的目标。 * 6.2 编码的工具语言 6.2.1 程序设计语言的分类 随着计算机技术的发展,目前已经出现了数百种程序设计语言,但被广泛应用的只有几十种。由于不同种类的语言适用于不同的问题域和系统环境,因此了解程序设计语言的分类可以帮助我们选择出合适的语言。通常可将程序设计语言分为面向机器语言和高级语言两大类。 * (1)面向机器语言 面向机器语言包括机器语言(Machine Language)和汇编语言(Assemble Language)两种。 机器语言是由机器指令代码组成的语言,是计算机系统可以直接识别的程序设计语言。对于不同的机器就有相应的一套机器语言。机器语言程序中的每一条语句实际上就是一条二进制形式的指令代码,由操作码和操作数两部分组成,且所有的地址分配都是以绝对地址的形式处理。存储空间的安排,寄存器、变址的使用都由程序员自己计划。因此,使用机器语言编写的程序很不直观,在计算机内的运行效率很高但编写出的机器语言程序其出错率也高,通常不用机器语言编写程序。 * (2)高级语言 高级语言中的语句标识符与人类的自然语言(英文)较为接近,并且采用了人们十分熟悉的十进制数据表示形式,利于学习和掌握。高级语言的抽象级别较高,不依赖于实现它的计算机硬件,且编码效率较高,往往一条高级语言的语句对应着若干条机器语言或汇编语言的指令。高级语言程序需要经过编译或解释之后,才能生成可在计算机上执行的机器语言程序。 1)通用语言 2)专用语言 * 6.2.2 程序设计语言的特性 程序编码阶段的任务是将软件的详细设计转换成用程序设计语言实现的程序代码。由于程序设计语言是实现人机通信的基本工具,编程者只有通过程序才能指挥计算机按照要求完成特定的任务,因此,程序设计语言所具有的特性往往会不可避免地对编程者处理问题的思路、编写程序的方式和质量产生影响。总的来说,程序设计语言具有心理、工程和技术3大特性。 * (1)心理特性 程序体现的是编程者解决问题的思路,不同的人有不同的解题思路,同一个人在不同心理状态下的解题思路往往也会有所不同。所谓程序设计语言的心理特性,就是指能够影响编程者心理的语言性能。这种影响主要表现在以下几个方面。 1)歧义性 2)简洁性 3)局部性和顺序性 * (2)工程特性 语言是人们在软件工程活动中的编码阶段所使用的工具,因此有必要从软件工程的观点考虑为了满足软件开发项目的需要,程序设计语言所应具备的工程特性。语言的工程特性主要体现在以下几个方面。 1)可移植性 2)语言编译器的实现效率 3)开发工具的支持 4)可维护性 * (3)技术特性 在计划阶段,极少考虑程序语言的技术特性。但在选定资源时,要规划将要使用的支撑工具,就要确定一个具体的编译器或者确定一个程序设计环境。如果软件开发组的成员对所要使用的语言不熟悉,那么在成本及进度估算时必须把学习的工作量估算在内。 * 6.2.3 程序设计语言的选择 要为待开发项目选择合适的程序设计语言,应充分考虑到项目的各种需求,结合各种语言的心理特性、工程特性、技术特性以及应用特点,尽量选取实现效率高且易于理解和维护的语言。由于程序设计语言的选择往往会受到各种实际因素的制约和限制,因此选择语言时不能只考虑理论上的标准,而是要同时兼顾理论标准和实用标准。下面分别简要地对选择语言的主要理论标准和实用标准进行介绍。 * (1)理论标准 1)理想的模块化机制、易于阅读和使用的控制结构及数据结构 模块化、良好的控制结构和数据结构可以降低编码工作的难度,增强程序的可理解性,提高程序的可测试性和可维护性,从而减少软件生存周期中的总成本,并缩短软件开发所需的时间。 2)完善、独立的编译机制 * (2)实用标准 1)系统用户的要求 由于用户是软件的使用者,因此软件开发者应充分考虑用户对开发工具的要求。特别是当用户要负责软件的维护工作时,用户理所应当地会要求采用他们熟悉的语言进行编程。 2)工程的规模 3)软件的运行环境 4)可以得到的软件开发
您可能关注的文档
- 轨道交通供电5 牵引变电所的电气接线.ppt
- 轨道交通供电8 城轨供电系统的安全要求.ppt
- 轨道交通牵引供变电技术第0章 绪论.ppt
- 轨道交通牵引供变电技术第1章第2节 城市轨道交通直流电力牵引供变电装置及其功能.ppt
- 轨道交通牵引供变电技术第1章第3节 电力牵引供变电系统一次电气设备和.ppt
- 轨道交通牵引供变电技术第2章第1节 高压电器的作用及分类.ppt
- 轨道交通牵引供变电技术第2章第2节 交、直流电弧的形成及熄弧原理与方法.ppt
- 轨道交通牵引供变电技术第2章第3节 断路器开断短路电流的工作状态及暂态分析.ppt
- 轨道交通牵引供变电技术第2章第4节 高压断路器的技术要求及基本参数.ppt
- 轨道交通牵引供变电技术第2章第5节 高压断路器的构造及工作原理.ppt
原创力文档


文档评论(0)