




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本章学习目标 n高级语言的分类、特点和选择 n常用编程语言的特点 nTurbo C的基本结构和语句 n面向对象的编程方法 n高级语言编程技术与编程风格 本章目录 n4.1 计算机程序和高级语言 n4.2 常用编程语言简介 n4.3 面向对象编程语言简介 n4.4 面向人工智能的语言简介 n4.5 编程的风格与原理 4.1 计算机程序和高级语言 n 人们用以同计算机“交谈”的语言,称为计算 机语言。计算机语言的种类非常多,总的来说可 以分成机器语言、汇编语言和高级语言三大类。 n 计算机所能识别的语言只有机器语言,即由0 和1构成的代码。但通常人们编程时不采用机器语 言,因为它非常难于记忆和识别。目前通用的编 程语言有两种形式:汇编语言和高级语言。 n 高级语言所编制的程序不能直接被计算机识别 ,必须经过转换才能执行。按转换方式可将它们 分为两类:解释类和编译类。 4.1.1 程序设计语言的特点 n1名字说明 n2类型说明 n3初始化 n4程序对象的局限性 n5程序模块 n6循环控制结构 n7分支控制结构 n8异常处理 n9独立编译 4.1.2 程序设计语言的选择 n适宜的程序设计语言能使根据设计去完成编码时 困难最少,可以减少程序测试量,并且可以得到 易于阅读和维护的程序。由于软件系统的绝大部 分成本用在生命周期的测试和维护阶段,所以易 于测试和维护是极其重要的。 n汇编语言的优点是目标程序执行速度快,缺点是 编程量大、困难,程序不易调试。 n采用高级语言编程效率高,编写的程序易于阅读 、测试、调试和维护。 4.1.2 程序设计语言的选择 n具体选择开发语言时可以考虑: n应该有理想的模块化机制,以及易读性的控制结 构和数据结构:为了使程序容易测试和维护以减 少生命周期的总成本; n编译程序能够尽可能多地发现程序中的错误:为 了便于调试和提高软件可靠性; n有良好的独立编译机制:为了降低软件开发和维 护的成本 4.2 常用编程语言简介 n4.2.1 BASIC语言 n4.2.2 FORTRAN语言 n4.2.3 COBOL语言 n4.2.4 PASCAL语言 n4.2.5 C语言 n4.2.6 Turbo C的基本结构 4.2.1 BASIC语言 n Beginners All-Purpose Symbolic Instruction Code n “初学者通用符号指令编码” n 一种易学易用的高级语言,从FORTRAN语 言简化而来的,最初是美国Daltmouth学院为便于 教学而开发的会话语言。它自1965年诞生以来, 其应用已远远超出教学范围,并于1977年开始了 标准化工作。 n 语言特点:简单易学,基本BASIC只有17种语 句,语法简单,结构分明,容易掌握;具有人机 会话功能,程序易于修改与调试,非常适合初学 者学习运用。 4.2.2 FORTRAN语言 n 1954年问世,1957年由IBM公司正式推出 ,最古老的高级程序语言之一 n Formula Translator的缩写 n 含义: “公式翻译” n 允许使用数学表达式形式的语句来编写 程序,主要用于科学计算方面。简单易学 ,至今仍富有强大的生命力。缺点是不便 于进行结构化程序的设计和编写。 4.2.3 COBOL语言 n Common Business Oriented Language n “面向商业的通用语言”,1960年推出 n特点: n 按层次结构来描述数据,具有完全适合 现实事务处理的数据结构、具有更接近英 语自然语言的程序设计风格,易读性强, 世界上标准化最早的语言,通用性强。由 于COBOL的这些特点,使其成为数据处理 方面应用最为广泛的语言。 4.2.4 PASCAL语言 n 沃思(N.Wirth)教授于20世纪60年代末 在瑞士苏黎士联邦工业大学创立的 n 是系统地体现结构程序设计思想的第一 种语言,适用于数值计算和数据处理。 n 特点:结构清晰,便于验证程序的正确 性,简洁、精致;控制结构和数据类型都 十分丰富,表达力强、实现效率高、容易 移植。 4.2.5 C语言 n 适合于作为系统描述语言,可用于编写 系统软件和应用软件。 n 学习C+语言的基础,掌握了C语言就容 易学习 C+。 n Turbo C 是美国Borland 公司的产品, 其中使用了全然一新的集成开发环境,即 使用了一系列下拉式菜单,将文本编辑、 程序编译、连接以及程序运行一体化,大 大方便了程序的开发。 4.2.6 Turbo C的基本结构 1Turbo C程序的一般组成部分 n(1)程序一般用小写字母书写。 n(2)大多数语句结尾必须要用“;”作为 终止符,否则Turbo C 不认为该语句结束 。 n(3)每个程序必须有一个而且只能有一个 称作主函数的main()函数。 n(4)每个程序体(主函数和每个子函数, 如上例中的main()函数和lgc()函数)必须 用一对花括号“”和“”括起来。 4.2.6 Turbo C的基本结构 n(5)一个较完整的程序大致包括:包含文 件(一组#include语句)、用户函数 说明部分、全局变量定义、主函数和若干 子函数。在主函数和子函数中又包括局部 变量定义、若干个Turbo C库函数、控制流 程语句、用户函数的调用语句等。 n(6)注释部分包含在“/*”和“*/”之间 ,在编译时它被Turbo C编译器忽略。 Turbo C源程序的一般形式为: 包含文件 子函数类型说明 全局变量定义 main() 局部变量定义 sub1() 局部变量定义 subN() 局部变量定义 4.3 面向对象编程语言简介 n什么是对象? n 一个对象是一个数据类型。对象就像记录一样 ,是一种数据结构。按最简单的理解,可以将对 象理解成一个记录。但实际上,对象是一种定义 不确切的术语,它常用来定义抽象的事务,是构 成应用程序的项目,其内涵远比记录要丰富。在 本节中,对象可被理解为可视化部件如按钮、标 签、表等。 n 对象的三个特征:封装性、继承性、多态性。 4.3 面向对象编程语言简介 n4.3.1 Visual Basic语言 n4.3.2 Visual C+语言 n4.3.3 Java和J+语言 n4.3.4 Delphi语言 n4.3.5 .NET Framework概述 n4.3.7 C#语言 4.3.1 Visual Basic语言 n Microsoft公司提供的Windows环境下的面向对 象的可视化开发工具 n “Visual”指的是开发图形用户界面GUI( Graphical User Interfaces)的方法。不需编写 大量代码去描述界面元素的外观和位置,而只要 把预先建立的对象添加到屏幕上的某处即可。 n Visual Basic功能强大,很容易在应用程序内 通过 Internet 或 Intranet访问文档和应用程序 ,或者创建 Internet 服务器应用程序。 4.3.2 Visual C+语言 n C+包含了C的全部特征、属性等优点。 同时添加了对面向对象编程(OOP)的完 全支持。 n Visual C+由Microsoft C/ C+演化而 来的,从Microsoft C/ C+ 8.0开始改称 为Visual C+,发展到今天的Visual C+ .NET。 n 最主要的技术特点:可视化编程和支持 面向对象的编程技术. 4.3.3 Java和J+语言 n Java和J+是以C+为基础的但更适于网络应用 的面向对象的高级语言。 n Java和J+尤其适于生成网页上栩栩如生的图 画和称为applet的Java应用程序,其中包含用户 定制的像按钮、复选框和文字输入框之类的网页 控件。 n Java是一种独立于平台的语言,Java程序不但 能在微机上运行而且可运行在Macintosh和UNIX机 上。J+提供给程序员的工具要求Windows的支持 。 4.3.4 Delphi语言 n Borland公司推出的可视化编程环境,一种方便 、快捷的Windows应用程序开发工具。 n 语言基础是PASCAL,Delphi编程环境自动为 Delphi应用程序生成应用程序框架,这一框架正 是应用程序的“骨架”。在骨架上即使没有附着 任何东西,仍可以严格地按照设计运行。编程人 员所要做的工作只是在“骨架”中加入程序代码 ,以实现自己的目的。 n Delphi就是Visual Pascal,使用的是面向对 象的PASCAL(Object Pascal)。 4.3.4 Delphi语言 打开一个新的空窗体,加入一个memo部件和四个按钮,并排列整齐。改变 按钮部件的Name属性,分别命名为Cut,Copy,Paste,Clear。可以发现:当 Name属性发生改变时,Caption属性将发生相应的变化。在Caption属性前加标 “&”号设立加速键,即称为图4.1的窗体。 4.3.4 Delphi语言 n 为每一个按钮建立如下的事件处理过程 n执行此程序。 n 可以在备注部件中输入文本,在进行了 文本的标记后,可以任意地进行剪切、拷 贝、粘贴和清除。当按钮被按动时,就调 用相应的过程进行处理。 4.3.5 .NET Framework概述 n Visual Studio的重大升级版本,主要包括Visual Basic.NET、Visual C+.NET和C#三个开发工具。 n .NET的两个主要组成部分是Microsoft .NET Framework SDK(软件开发工具包)和Visual Studio IDE(集成开发环境)。IDE用来开发程序 ,而Framework则用于运行程序。 n .NET Framework为开发和运行在不同平台、不 同语言编写的应用程序以及XML Web服务提供了一 个平台。.NET Framework由公共语言运行库、类 库以及ASP.NET组成,ASP.NET是基于组件的动态 服务器页面。 4.3.5 .NET Framework概述 图4.2 用.NET公共语言运行库编译和执行程序的步骤 托管 源代码 目标计算 机的本机 代码 遵循CLS的 语言编译器 语言语言 JIT 编译器 PE MSIL和 元数据 4.3.6 Visual Basic.NET语言 n Visual Basic.NET(又称Visual Basic 7.0或VB 7.0 )是Microsoft公司在Visual Basic 6.0之后推出的最 新版本,集成在Visual Studio.NET中,与Visual C+.NET以及C#组成了.NET构架。 n Visual Basic.NET新增加了许多新的面向对象的 特性比如继承、重载等等。语言的新特点也包括 了对进程的控制和底层结构的操作,这些新特性 使得Visual Basic.NET再次成为程序员关注的焦点 。 4.3.7 C#语言 n C#是一种以.NET为基础的语言。.NET平 台提供了一个运行C#语言的环境,叫做 CLR(Common Language Runtime),CLR 和Java的虚拟机十分相似。CLR管理着代码 的执行,并且提供了跨语言集成、跨语言 异常处理和良好的安全性等服务。 n C#是Visual Studio .NET中的一个组成部分 。 4.3.7 C#语言 图4.3 C#源程序的编译过程 4.4 面向人工智能的语言简介 n4.4.1 LISP语言 n4.4.2 Prolog语言 4.4.1 LISP语言 n 一种计算机的表处理语言,也是函数型 语言。 n 最初作为书写字符与表的递归函数的形 式系统出现的,1958年由美国麻省理工学 院的人工智能小组提出,是为问答系统设 计的一种语言。 n LISP语言一般为解释型语言,但也有了 编译型的LISP语言,并已经有了专用的 LISP机。 4.4.2 Prolog语言 n Prolog (Programming in Logic)是逻辑型 语言。逻辑程序设计首先由英国爱丁堡大学的 Robert Kowalski从理论方面提出. n Prolog由程序设计的“How to do the Job” 向“What you want to do”前进一步。用户只要 说明已知事实是什么,定义规则(说明对象间的 关系),再告诉要解决的问题是什么(询问)就 行了,不必告诉计算机如何一步一步做,问题的 求解是通过Prolog的内部机制自动生成。 n 递归是Prolog语言的重要特点之一。 4.5 编程的风格与原理 n4.5.1 写程序的风格 n4.5.2 高级语言的程序设计原理 n4.5.3 程序设计方法论 4.5.1 写程序的风格 n1程序内部的文档 程序内部的文档包括恰当的标识符、适 当的注解和程序的视觉组织等。 选取含义鲜明的名字,使它能正确地提 示程序对象所代表的实体,这对于帮助阅 读者理解程序是很重要的。如果使用缩写 ,那么缩写规则应该一致,并且应该给每 个名字加注解。 正确的注解非常有助于对程序的理解。 4.5.1 写程序的风格 n2数据说明 数据说明的次序应该标准化 当多个变量名在一个语句中说明时,应 该按字母顺序排列这些变量。 如果设计时使用了一个复杂的数据结构 ,则应该用注解说明实现这个数据结构的 方法和特点。 4.5.1 写程序的风格 n3语句构造 构造语句时应该遵循的原则是,每个语句都应 该简单而直接,不能为了提高效率而使程序变得 过分复杂。 4.5.1 写程序的风格 4输入/输出 对所有输入数据都进行检验;检查 输入项重要组合的合法性;保持输入格 式简单;使用数据结束标记,不要求用 户指定数据的数目;明确提示交互式输 入的请求,详细说明可用的选择或边界数 值;当程序设计语言对格式有严格要求 时,应保持输入格式一致;设计良好的 输出报表;给所有输出数据加标志。 4.5.1 写程序的风格 n5效率 效率主要指处理机时间和存储器空间两个方面 。 4.5.2 高级语言的程序设计原理 n完成给定任务程序设计的大致流程是:应 用问题建立数学模型选用计算机方法 画流程图选用某种语言编写程序调 试程序进行解释或编译产 生目标代码 运行目标代码输出。 n1计算方法 n2流程图 n3程序设计 本章小结 n 计算机程序是有序指令的集合,而程序是 用计算机语言编写
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版粮食收购企业粮食储备管理合同
- 二零二五年度土地征收补偿协议书示范样本
- 2025版个人担保服务条款协议范本
- 二零二五年度基桩检测与施工验收合同
- 二零二五党建联学共建合作协议(生态保护版)
- 二零二五年度第三人民医院肉类配送与冷链服务合同
- 2025版服装行业产品质量检测与认证服务合同
- 2025版木屋安全防护设施安装与施工合同
- 二零二五年度高新技术企业岗位聘任合同范本
- 2025至2030年中国平板用键盘行业市场运行现状及投资战略研究报告
- 闵行区2024-2025学年下学期七年级数学期末考试试卷及答案(上海新教材沪教版)
- 语言接触与混合语现象-洞察及研究
- 义务教育科学课程标准(2022年版)
- Q-GDW11628-2016新能源消纳能力计算导则
- 十五五文物规划思路
- 公安宣传工作管理制度
- 咨询行业流程管理制度
- JG/T 210-2018建筑内外墙用底漆
- CJ/T 96-2013生活垃圾化学特性通用检测方法
- 呆滞库存考核管理制度
- 2025叉车理论考试试题及答案
评论
0/150
提交评论