软件工程课件-4第四章软件编码.ppt
软件工程,任课教师:程丽计算机与信息学院,第四章 软件编码,4.1 程序设计语言的特征及选择4.2 程序设计风格,第四章 软件编码,课程的任务、目的和基本要求了解程序设计语言的特性和选择途径掌握养成良好程序设计风格应遵循的原则,本章内容介绍程序设计语言的特色及编码应注意的程序设计风格。,第四章 软件编码,第四章 软件编码4.1 程序设计语言的特征及选择,4.1.1 程序设计语言特性4.1.2 程序设计语言的选择,1.程序设计语言的分类面向机器语言高级语言第四代语言,第四章 软件编码4.1.1 程序设计语言特性,2.程序设计语言的特性心理特性工程特性技术特性,第四章 软件编码4.1.1 程序设计语言特性,3.心理特性歧义性:要无二义简洁性:简洁易懂局部性和顺序性:高内聚低耦合,多顺序少分支、循环传统性:打破传统观念的束缚,第四章 软件编码4.1.1 程序设计语言特性,4.工程特性可移植性:能够移植开发工具的可利用性:全面利用开发工具软件的可重用性:软件可重用,但注意重用技术可维护性:源程序可读,语言文档化,第四章 软件编码4.1.1 程序设计语言特性,5.技术特性 根据软件需求、项目特点确定相应语言,第四章 软件编码4.1.1 程序设计语言特性,首先,确定求解问题对编码有哪些要求。其次,从以下方面选择满足要求的语言。项目应用领域 软件开发方法 软件执行环境 算法和数据结构的复杂性 软件开发人员的知识,第四章 软件编码4.1.2 程序设计语言的选择,项目应用领域,第四章 软件编码4.1.2 程序设计语言的选择,第三,没有一种语言能等量地满足各种不同的要求,所以在做出选择时,必须优先考虑主要的要求,然后适当的照顾其它方面因素。,第四章 软件编码4.1.2 程序设计语言的选择,1.什么是程序设计风格 是指一个人编程特点、习惯及逻辑思路等,第四章 软件编码4.2 程序设计风格,2.编码风格的发展 从70年代以来,编码的目的从强调效率转变到强调清晰。与此相应,编码风格也从追求“聪明”和“技巧”,变为提倡“简明”和“直接”。,第四章 软件编码4.2 程序设计风格,3.如何养成良好的编程风格源程序文档化数据说明语句构造输入和输出界面布局效率,第四章 软件编码4.2 程序设计风格,有意义的变量名称标准的书写格式适当的注释必要的注释,第四章 软件编码4.2 程序设计风格源程序文档化,不提倡用拼音给函数或变量命名,建议用英文标识符按意取名,这样可以“见名知意”,但用词力求准确单词之间采用下划线分开名字不能太长缩写规则一致避免使用相似的变量名,变量中尽量不含数字同一变量名不要有多种意义,第四章 软件编码4.2 程序设计风格源程序文档化之一有意义的变量名称,用分层缩进的写法显示嵌套结构层次在注释段周围加上边框;注释段与程序段、以及不同的程序段之间插入空行;每行只写一条语句;书写表达式时适当使用空格或圆括号作隔离符。,第四章 软件编码4.2 程序设计风格源程序文档化之二标准的书写格式,注释通常用于:每一程序单元的开始处,重要程序段和难懂的程序段。模块起始部分使用序言性注释,说明模块的用途、功能、调用形式、参数描述、从属模块的清单、开发历史,描述数据程序段使用功能性注释,说明程序段或语句的功能以及数据的状态,用空行、缩进、括号区分注释和程序,第四章 软件编码4.2 程序设计风格源程序文档化之三适当的注释,函数说明。对几乎每个函数都应有适当的说明,通常加在函数实现之前,在没有函数实现部分的情况下则加在函数原型前,其内容主要是函数的功能、目的、算法等说明,参数说明、返回值说明等,必要时还要有一些如特别的软硬件要求等说明在代码不明晰或不可移植处必须有一定的说明。,第四章 软件编码4.2 程序设计风格源程序文档化之四必要的注释,函数说明举例,/*函数名称:ResultType MyFunction(ParamType1 Param1,ParamTyp2,Param2)*功能:该函数主要是完成如下的功能*设计目的:设计该函数主要是为了解决*设计原理:该函数是这样设计的*实现方法/过程:这个函数是这样实现的*出入口参数:ParamType1 Param1:类型 ParamType1,这个参数是*返回值描述:*设计修改日志:2003/4/16第一次设计 2003/4/17修改了 2003/4/18添加了删除了*相关函数:*其他补充说明:*/,数据说明顺序应规范,使数据的属性更易于查找按字典序排列说明一个语句中的多个变量复杂数据结构要加注释,说明在程序实现时的特点,第四章 软件编码4.2 程序设计风格数据说明,简单直接,避免复杂判定以及多重循环嵌套流程控制语句的构造技术,直接影响到程序的可读性及效率表达式使用括号提高清晰度层次语句采用缩进形式避免一行多条语句,第四章 软件编码4.2 程序设计风格语句构造,标准的控制结构是顺序、选择和判断 在尽量采用标准结构的同时,避免使用引起混淆的结构和语句,第四章 软件编码4.2 程序设计风格语句构造之一使用标准控制结构,GOTO语句的使用不宜多,但也不应完全禁止。以下三种情况下可以考虑使用GOTO语句,但不要相互交叉:GOTO语句实现提前退出循环;GOTO语句用于出错处理;GOTO语句减少重复程序段,但是这种使用只在极为特殊的情况下考虑应用,第四章 软件编码4.2 程序设计风格语句构造之二有限制地使用GOTO语句,绝大多数的计算机系统都是人机交互系统,源程序的输入输出风格必须充分考虑人的因素,尽量做到对人友善,避免因设计不当给使用带来麻烦。,第四章 软件编码4.2 程序设计风格输入和输出,应根据不同用户的类型、特点和不同的要求来制定方案。格式力求简单,并应有完备的出错检查和出错恢复措施。,第四章 软件编码4.2 程序设计风格输入和输出,输入方面:输入格式力求简单、一致,向用户显示输入提示让程序对输入数据进行合法性和有效性检验,防止对程序的有意和无意的破坏输入批量数据使用结束标志,不要使用计数控制交互式输入提供可用的选择和边界值,第四章 软件编码4.2 程序设计风格输入和输出,输出方面:所有的输出数据,必须加以标志和必要的说明使所有的报表、报告具有良好的格式。如输出数据表格化、图形化,第四章 软件编码4.2 程序设计风格输入和输出,界面布局主要考虑各区域在屏幕的放置,使用户能以最快的速度找到操作对象、发现目标,屏幕的布局还要考虑界面的表现形式,使界面美观一致,协调合理。,第四章 软件编码4.2 程序设计风格界面布局,界面上只包含必要的信息界面上包含所有必要的信息界面布局从左上角开始制订格式标准,所有的屏幕设计都遵守这些标准,保持一致性根据逻辑关系将相关的信息放在一起屏幕设计要保持对称的平衡避免过多使用前调信息,第四章 软件编码4.2 程序设计风格界面布局,区分标题和内容提示信息要简洁设计与用户知识和经验一致按照使用顺序显示信息遵照流行软件的事实标准选择合理的显示方式尽可能不让用户切换画面即可完成一次完整的操作,第四章 软件编码4.2 程序设计风格界面布局,效率指处理机时间和存储空间的使用需求分析时给出效率目标好的设计方法、数据结构和算法带来高效率先保质再保量,第四章 软件编码4.2 程序设计风格效率,