当前位置:文档之家› 软件工程第6章 软件编码设计

软件工程第6章 软件编码设计


6
(1)心理特性 程序体现的是编程者解决问题的思路,不同的人有 不同的解题思路,同一个人在不同心理状态下的解题思 路往往也会有所不同。所谓程序设计语言的心理特性, 就是指能够影响编程者心理的语言性能。这种影响主要 表现在以下几个方面。 1)歧义性 2)简洁性 3)局部性和顺序性
7
(2)工程特性 语言是人们在软件工程活动中的编码阶段所使用的 工具,因此有必要从软件工程的观点考虑为了满足软件 开发项目的需要,程序设计语言所应具备的工程特性。 语言的工程特性主要体现在以下几个方面。 1)可移植性 2)语言编译器的实现效率 3)开发工具的支持 4)可维护性
8
(3)技术特性 在计划阶段,极少考虑程序语言的技术特性。但在 选定资源时,要规划将要使用的支撑工具,就要确定一 个具体的编译器或者确定一个程序设计环境。如果软件 开发组的成员对所要使用的语言不熟悉,那么在成本及 进度估算时必须把学习的工作量估算在内。
9Байду номын сангаас
6.2.3 程序设计语言的选择 要为待开发项目选择合适的程序设计语言,应充分 考虑到项目的各种需求,结合各种语言的心理特性、工 程特性、技术特性以及应用特点,尽量选取实现效率高 且易于理解和维护的语言。由于程序设计语言的选择往 往会受到各种实际因素的制约和限制,因此选择语言时 不能只考虑理论上的标准,而是要同时兼顾理论标准和 实用标准。下面分别简要地对选择语言的主要理论标准 和实用标准进行介绍。
5
6.2.2 程序设计语言的特性 程序编码阶段的任务是将软件的详细设计转换成用 程序设计语言实现的程序代码。由于程序设计语言是实 现人机通信的基本工具,编程者只有通过程序才能指挥 计算机按照要求完成特定的任务,因此,程序设计语言 所具有的特性往往会不可避免地对编程者处理问题的思 路、编写程序的方式和质量产生影响。总的来说,程序 设计语言具有心理、工程和技术3大特性。
第6章 软件编码设计
软件开发的最终目标,是产生能在计算机上执行的 程序。编码就是把软件设计结果翻译成用某种程序设计 语言书写的程序。作为软件工程过程的一个阶段,编码 是对设计的进一步具体化,因此,程序的质量主要取决 于软件设计的质量。但是,所选用的程序设计语言的特 点及编码风格也将对程序的可靠性、可读性、可测试性 和可维护性产生深远的影响。
10
(1)理论标准 1)理想的模块化机制、易于阅读和使用的控制结 构及数据结构 模块化、良好的控制结构和数据结构可以降低编码 工作的难度,增强程序的可理解性,提高程序的可测试 性和可维护性,从而减少软件生存周期中的总成本,并 缩短软件开发所需的时间。 2)完善、独立的编译机制
11
(2)实用标准 1)系统用户的要求 由于用户是软件的使用者,因此软件开发者应充分 考虑用户对开发工具的要求。特别是当用户要负责软件 的维护工作时,用户理所应当地会要求采用他们熟悉的 语言进行编程。 2)工程的规模 3)软件的运行环境 4)可以得到的软件开发工具
3
(1)面向机器语言 面向机器语言包括机器语言(Machine Language) 和汇编语言(Assemble Language)两种。 机器语言是由机器指令代码组成的语言,是计算机 系统可以直接识别的程序设计语言。对于不同的机器就 有相应的一套机器语言。机器语言程序中的每一条语句 实际上就是一条二进制形式的指令代码,由操作码和操 作数两部分组成,且所有的地址分配都是以绝对地址的 形式处理。存储空间的安排,寄存器、变址的使用都由 程序员自己计划。因此,使用机器语言编写的程序很不 直观,在计算机内的运行效率很高但编写出的机器语言 程序其出错率也高,通常不用机器语言编写程序。
4
(2)高级语言 高级语言中的语句标识符与人类的自然语言(英文) 较为接近,并且采用了人们十分熟悉的十进制数据表示 形式,利于学习和掌握。高级语言的抽象级别较高,不 依赖于实现它的计算机硬件,且编码效率较高,往往一 条高级语言的语句对应着若干条机器语言或汇编语言的 指令。高级语言程序需要经过编译或解释之后,才能生 成可在计算机上执行的机器语言程序。 1)通用语言 2)专用语言
1
6.1 编码设计的目的
编码的目的是:使用选定的程序设计语言,将软件 的过程性描述(算法)翻译为该语言书写的程序(或源 代码),然后在机器上运行,以达到预期的目标。
2
6.2 编码的工具语言
6.2.1 程序设计语言的分类 随着计算机技术的发展,目前已经出现了数百种程 序设计语言,但被广泛应用的只有几十种。由于不同种 类的语言适用于不同的问题域和系统环境,因此了解程 序设计语言的分类可以帮助我们选择出合适的语言。通 常可将程序设计语言分为面向机器语言和高级语言两大 类。
13
6.3 编码风格及软件效率
6.3.1 编码风格 随着计算机技术的发展,软件的规模增大了,软件 的复杂性也增强了。为了提高程序的可阅读性,要建立 良好的编程风格。编码风格是指在不影响程序正确性和 效率的前提下,有效编排和合理组织程序的基本原则。 风格就是一种好的规范,当然我们所说的程序设计风格 肯定是一种好的程序设计规范,包括良好的代码设计, 函数模块,接口功能以及可扩展性等,更重要的就是程 序设计过程中代码的风格,包括缩进、注释、变量及函 数的命名、泛型和容易理解。
14
(1)内部文档 所谓内部文档,是指程序中的说明性注释信息。在 程序中加入注释信息的目的是为了提高程序的可读性, 为程序的测试和维护带来方便。几乎所有的程序设计语 言中都提供了专用于书写注释信息的注释语句。为了使 程序易于阅读和修改,应在必要的地方加上相应的注释。 在修改程序时,不要忘记对相应的注释也要进行修改。 程序中的注释一般可按其用途分为两类:序言性注 释和描述性注释。
12
5)软件开发人员的知识 软件开发人员采用自己熟悉的语言进行开发,可以 充分运用积累的经验使开发的目标程序具有更高的质量 和运行效率,并可以大大缩短编码阶段的时间。为了能 够根据具体问题选择更合适的语言,软件开发人员应拓 宽自己的知识面,多掌握几种程序设计语言。 6)软件的可移植性要求 要使开发出的软件能适应于不同的软、硬件环境, 应选择具有较好通用性的、标准化程度高的语言。 7)算法和数据结构的复杂性 8)软件的应用领域
相关主题