第12讲程序设计语言和编码.ppt
《第12讲程序设计语言和编码.ppt》由会员分享,可在线阅读,更多相关《第12讲程序设计语言和编码.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程软件工程第12讲 程序设计语言和编码潘俊 Phone:13605770868办公室:北7-1202-C上讲回顾上讲回顾n引言:引言:Windows界面的演变界面的演变n人的因素人的因素n人机界面风格人机界面风格n人机界面设计过程人机界面设计过程n人机界面设计的原则人机界面设计的原则n人机界面设计工具人机界面设计工具本讲内容本讲内容n引言:编程的境界引言:编程的境界n程序设计语言程序设计语言n编程风格编程风格n高质量程序设计高质量程序设计编程的境界编程的境界学编程学编程 学写作学写作学会写程序学会写程序 学字,词,文法,句法学字,词,文法,句法学会高效地写程序学会高效地写程序 快速地写文
2、章快速地写文章 学会写高效的程序学会写高效的程序 写简洁明快的好文章写简洁明快的好文章学会设计程序学会设计程序 选择结构,流程,方法选择结构,流程,方法学会设计有用的程序学会设计有用的程序 写人们喜欢看的文章写人们喜欢看的文章 编程的境界编程的境界Thus speak the master programmer:After three days without programming,life becomes meaningless.师曰:师曰:三日不编程,食肉无味。三日不编程,食肉无味。编程的境界编程的境界n编码阶段的任务是根据详细设计说明书编写程序编码阶段的任务是根据详细设计说明书编写程序
3、n程序设计语言的特性和程序设计风格会深刻地影响软件的质程序设计语言的特性和程序设计风格会深刻地影响软件的质量和可维护性量和可维护性n为了保证程序编码的质量,程序员必须深刻理解、熟练掌握为了保证程序编码的质量,程序员必须深刻理解、熟练掌握并正确地运用程序设计语言的特性并正确地运用程序设计语言的特性n此外,还要求源程序具有良好的结构性和良好的程序设计风此外,还要求源程序具有良好的结构性和良好的程序设计风格格本讲内容本讲内容n引言:编程的境界引言:编程的境界n程序设计语言程序设计语言n编程风格编程风格n程序设计支持环境程序设计支持环境程序设计语言的特性程序设计语言的特性n心理特性心理特性l从设计到编
4、码的转换基本上是人的活动,因此,语言的性能对程序员的心理影响将对转换产生重大影响l在维持现有机器的效率、容量和其它硬件限制条件的前提下,程序员总希望选择简单易学、使用方便的语言,以减少程序出错率,提高软件可靠性,从而提高用户对软件质量的可信度nThus speak the master programmer:A well-written program is its own heaven;a poorly-written program is its own hell.师曰:师曰:善程序者自善其身,不善程序者自毁其意。善程序者自善其身,不善程序者自毁其意。程序设计语言的特性程序设计语言的特性n
5、 影响程序员心理的语言特性有:影响程序员心理的语言特性有:l一致性:指语言采用的标记法(使用的符号)协调一致的程度。如,一符多用的标记法容易导致错误。l二义性:对语句不同理解所产生的二义性将导致程序员对程序理解的混乱。如,if then if then else x:=a*b*c程序设计语言的特性程序设计语言的特性l紧致性(compactness):指程序员必须记忆的与编码有关的信息总量。刻画紧致性的指标有:对结构化部件的支持程度,可用关键字和缩写的种类,算术及逻辑操作符的数目,预定义函数的个数等。l局部性:程序由模块组成,应采用高内聚低耦合高内聚低耦合、模块独立、局部化等原则。l线性:人们习
6、惯于按逻辑上线性的次序理解程序,程序中大量的分支和循环、随意的GOTO语句会破坏程序的线性,提倡结构化程序设计。程序设计语言的特性程序设计语言的特性n工程特性工程特性l程序设计语言的特性影响人们思考程序的方式,从而也限制了人们与计算机进行通信的方式。为满足软件工程的需要,程序设计语言还应该考虑:将设计翻译成代码的便利程度、编译器的效率、源代码的可移植性、配套的开发工具、软件的可复用性和可维护性。程序设计语言的特性程序设计语言的特性l将设计翻译成代码的便利程度:语言若直接支持结构化部件、复杂的数据结构、特殊I/O处理、按位操作和OO方法,则便于将设计转换成代码。l编译器的效率:编译器应生成效率高
7、的代码l源代码的可移植性:语言的标准化有助于提高程序代码的可移植性,源程序中应尽量不用标准文本以外的语句。程序设计语言的特性程序设计语言的特性l配套的开发工具:CASE工具可减少编码时间,提高代码质量。尽可能使用工具和程序设计支撑环境。l可复用性:指编程语言能否提供可复用的软件成分,复用时需要修改调整的内容多少 l可维护性:包括可理解性、可测试性、可修改性。源程序的可读性和文档化特性是影响可维护性的重要因素。程序设计语言的特性程序设计语言的特性n应用特性应用特性l不同的程序设计语言满足不同的技术特性,可以对应于不同的应用。例如Prolog语言适用于人工智能领域、SQL语言适用于关系数据库。语言
8、的技术特性对软件工程各阶段有一定的影响,特别是确定了软件需求之后,程序设计语言的特性就很重要了,要根据不同项目的特性选择相应特性的语言。程序设计语言的基本机制程序设计语言的基本机制n程序设计语言基本成份可归纳为四种:数据成分、运算成分、程序设计语言基本成份可归纳为四种:数据成分、运算成分、控制成分、传输成分控制成分、传输成分 l数据成分:它指明该语言能接受的数据,用来描述程序中的数据。如各种类型的变量、数组、指针、记录等。作为程序操作的对象,具有名称、类型和作用域等特征。使用前要对数据的这些特征加以说明。数据名称由用户通过标识符命名,类型说明数据需占用存储单元的多少和存放形式,作用域说明数据可
9、以使用的范围。程序设计语言的基本机制程序设计语言的基本机制n以以 C语言为例,其数据构造方式可分为基本类型和派生类型语言为例,其数据构造方式可分为基本类型和派生类型 程序设计语言的基本机制程序设计语言的基本机制n运算成分:它指明该语言允许执行的运算,用来描述程序中运算成分:它指明该语言允许执行的运算,用来描述程序中所需进行的运算。如所需进行的运算。如+、-、*、/等。等。n控制成分:它指明该语言允许的控制结构,人们可利用这些控制成分:它指明该语言允许的控制结构,人们可利用这些控制成分来构造程序中的控制逻辑。基本的控制成分包括:控制成分来构造程序中的控制逻辑。基本的控制成分包括:顺序结构、条件选
10、择结构和重复结构顺序结构、条件选择结构和重复结构。如下页图。如下页图程序设计语言的基本机制程序设计语言的基本机制基本程序控制基本程序控制结构构程序设计语言的基本机制程序设计语言的基本机制n传输成分:它指明该语言允许的数据传输方式,在程序中可传输成分:它指明该语言允许的数据传输方式,在程序中可用它进行数据传输。用它进行数据传输。n例如:例如:Turbo C语言标准库提供了两个控制台格式化输入、输语言标准库提供了两个控制台格式化输入、输出函数出函数printf()和和scanf(),这两个函数可以在标准输入输出,这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。设备上以各种不同的格式读写
11、数据。Printf()函数用来向标函数用来向标准输出设备准输出设备(屏幕屏幕)写数据写数据,scanf()函数用来从标准输入设函数用来从标准输入设备备(键盘键盘)上读数据。上读数据。程序设计语言的基本机制程序设计语言的基本机制nA program should be light and agile,its subroutines connected like a strings of pearls.The spirit and intent of the program should be retained throughout.There should be neither too litt
12、le nor too much,neither needless loops nor useless variables,neither lack of structure nor overwhelming rigidity.n程序者,轻盈捷巧,子程序者,累若串珠,贯之程序者,轻盈捷巧,子程序者,累若串珠,贯之以精神。减一丝则少,增一分则多,循环、变量、以精神。减一丝则少,增一分则多,循环、变量、结构皆为其恰。结构皆为其恰。程序设计语言的演变和分类程序设计语言的演变和分类n按语言级别:低级语言和高级语言;按语言级别:低级语言和高级语言;n按应用范围:通用语言和专用语言;按应用范围:通用语言和专
13、用语言;n按用户要求:过程式语言和非过程式语言;按用户要求:过程式语言和非过程式语言;n按语言所含的成分:顺序语言、并发语言和分布式语言按语言所含的成分:顺序语言、并发语言和分布式语言 程序设计语言的发展史程序设计语言的发展史l第一代语言:机器语言和汇编语言l第二代语言:早期的高级语言,如BASIC,FORTRAN,COBOL等l第三代语言:具有很强的数据结构和过程描述能力,支持结构化编程,如Pascal,Modula,C,Ada等l第四代语言(4GL):这类语言出现于七十年代,其目的是为了提高程序开发速度,以及让非专业用户能直接编制计算机程序第四代语言的特点第四代语言的特点l对用户友善,一般
14、用类自然语言、图形或表格等描述方式,普通用户很容易掌握l多数与数据库系统相结合,可直接对数据库进行操作l对许多应用功能均有默认的假设,用户不必详细说明每一件事情的做法l程序码长度及获得结果的时间与使用COBOL语言相比约少一个数量级l支持结构化编程,易于理解和维护第四代语言的特点第四代语言的特点l目前,第四代语言的种类繁多,尚无标准,在语法和能力上有很大差异,其中一些支持非过程式编程,更多的是既含有非过程语句,也含有过程语句。l典型的4GL有:数据库查询语言、报表生成程序、应用生成程序、电子表格、图形语言等。l 多数4GL是面向领域的,很少是通用的。自然语言自然语言n最理想的是可以使用自然语言
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 12 程序设计语言 编码
限制150内