资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,软件工程,任课教师:程丽,计算机与信息学院,第四章 软件编码,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 程序设计语言的选择,项目应用领域,年代,应用领域,主要语言,其它语言,现代,商业,COBOL、C+、Java,C,科学计算,FORTRAN、C、C+、Java,BASIC,系统,C、C+、Java,Ada,人工智能,LISP、Prolog,第四章 软件编码,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 程序设计风格效率,
展开阅读全文