• /  29
  • 下载费用: 15.00积分  

程序设计语言概述

'程序设计语言概述'
第 章 程序设计语言概述u 1 第 章 程序设计语言的基本成分u 2 第 章 程序设计方法概述u 3 第 章 面向对象语言基础u 4 第 章 类的管理及常用工具类u 5 第 章 异常处理和断言u 6 第 章 线程u 7 第 章 编程基础和u 8 GUI applet 第 章 流u 9 I/O 第 章 网络通信u 10 第 章 泛型与集合框架u 11 2/29 第 章 程序设计语言概述 1 u 程序的含义和程序设计策略 1.1 n 包括程序的含义、程序设计的通用策略u 程序设计语言重要属性 1.2 n 包括语言的范型、类型系统、编译和解释u 语言概述 1.3 Java n 包括诞生背景、发展、特点、开发环境、运行原理 本章重点 、理解程序、程序设计、程序设计语言三概念; 1 、 设计初衷、崛起原因、特点、环境配置。 2 Java 3/29 1.1 程序的含义和程序设计策略u 程序的含义 1.1.1 n “程序”并非计算机领域的专有名词 n 我们每天都接触和设计各种程序 数据类型很重要! n 计算机程序有自己的特点 数据类型 n 计算机程序的定义: Ø计算任务的处理对象和处理规则的描述。 对数据 核数心据特点有二:每、日表例达行计程算序::需起要床描洗述漱数据吃和饭的处处理上理数学据的成分;术1 语的名字常与其含义- 密切-相关。- 程序, ,设、计由程计序算:机制理定解训和练执计行划:、需组程织序词描句述表符达合某pr计种o算g思r机a想m特点,本2 意为:计划、节目单,即按照某种顺序做事。程如序用设内计存:存为储满数足据特、定含需义求的,唯将一一性组、动机作械设计定算次序。 …… 4/29 1.1 程序的含义和程序设计策略u 程序设计的通用策略 1.1.2 n 经千百年锤炼出的策略,如: Ø理清思路、掌控主次; Ø先抓主要矛盾,再抓次要矛盾; Ø先定纲要,再写内容。 n 计算机程序开发的经典策略:自顶向下逐步求精 于 年提出; ØN. Wirth 1971 Ø要点:编制程序应分若干步进行,逐步细化。 5/29注意事项:至少可以有两种分解方式:自顶向下逐程步求序精的的精含髓,义就和是简程化问序题设求解计步骤策,略即复杂注1.意)1按事.日1项 程 :分解,即第一天/第二天比赛项目、…;问题可分为简单的几步,每一步骤又是简单的几步,如此,应2.注)按意类每别次分分解解,出田子径目(标短/子跑步、骤长或跑者、不…宜)过、多体。操为、什…么;?直n 至自某顶一向步下骤逐可步通求过一精条指令示/过例程:/成组熟织算一法场来运完动成。会哪种方式较好,为什么? —— 1 运动会实施计划 程序名 运动会实 开幕式 施计划 运动会实施计划 1. 运动员入场 1.1 相关人员讲话 1.2 开幕式 相关表演 明确、 1. 1.3 无歧义、 各项比赛 程序体 2. …… ··· 能真正 闭幕式 各项比赛 3. 2. 实施的 …… 闭幕式 计划 3. 第1步程序 …… 第2步程序 第n步程序 6/29 1.1 程序的含义和程序设计策略 优化:是否可以将2、3两步合并? 自顶向下逐步求精 示例 : n 能否改进等问题 —,—应 当成为2 一种常态思维。 给定有序数组 。现输入一个整数,将其插 Ø a[0..n-1] 入该数组的合适位置,使其仍有序。f(int[]a,int len) f(int[]a,int len) f(int[]a, int len) 输入数据; 1) 输入数据; 找位置;1) 2) 用 、 找位置; Java C2) …… ··· 等语言书写 移出空位; 移出空位;3) 3) 的源代码 实施插入。4) 移动起/止/规律 实施插入。 4) 7/29 1.1 程序的含义和程序设计策略u 运行程序的两种基本方式 1.1.3 n 两种:编译方式和解释方式 n 编译方式:编:编辑(优化),译:翻译 Ø 做法:用编译器将源代码全部一次性地翻译成二进制 代码 语言: 、 、 Ø C/C++ Pascal/Delphi …… Ø 优点:能提高代码质量、程序执行速度快 Ø 缺点:程序运行期间,程序员无法干预 编译器 硬件 源代码 二进制代码 8/29 1.1 程序的含义和程序设计策略 目前,解释性语言日渐兴起。源于两点:1.)速度足以应对 普通应用; 2.)易于扩充高级语言机制u 运行程序的两种基本方式 1.1.3 n 解释方式 Ø 做法:用解释器将源代码逐句翻译源码,逐句执行; 语言: 、 、 、 、 、 Ø Basic/VB Java C# JSP XML …… Ø 优点:能监控程序执行,可通过在解释器(也称虚拟 机)中新增机制或模拟硬件,提供更多更高级的语言 机制; 缺点:代码很难优化(为什么?)、程序执行速度慢 Ø 解释器 硬件 虚拟机 ( ) 源代码 二进制代码 9/29 程序设计语言重要属性 1.2 语言的设计范型1. 类型系统2. 编译型语言和解释型语言3. 10/29 程序设计语言重要属性 1.2 u 语言的设计范型 1.2.1 n 计算是计算机最核心任务。语言的设计范型就是如 何看待计算,这是描述计算的前提和基础。例如: n 目前主流有四种范型: Ø 命令式范型:计算就是用指令去修改数据; Ø 面向对象式范型:计算就是对象间的互操作; Ø 函数式范型:计算就是对数学函数的求解; Ø 逻辑式范型:计算就是为做出逻辑判定而进行的推理 范型框定。了程序最基本的范畴。例如,对命令式语言,基础 成分就是指令、数据,这样才能表达命令式的计算。 11/29 程序设计语言重要属性 1.2 u 类型系统 1.2.2 n 类型系统是程序设计语言最为核心的成分之一。 Ø涉及数据如何组织、分类,新类别怎样构造,类型 如何使用,以及类型安全等方面。 n 主要讨论 Ø分类和构造 Ø强类型和弱类型 Ø静态语言和动态语言 12/29 程序设计语言重要属性 1.2 u 类型系统 1.2.2 n 分类和构造 分类策略:基本类型 新类型构造机制 Ø + n 注意: 基本类型对应最基本数据,且类型不能太多; 1. 基本类型常用汇编、 等设计; 2. C 类型构造机制应易用且安全。 3. 简单比较 和 的类型系统 描述——数 据是程序设C 计J语a言va最重要基础的任务之一。 13/29 程序设计语言重要属性 1.2 u 类型系统 1.2.2 n 强类型语言和弱类型语言 “强”是指类型检查严格;如 Ø if ( i=5 ) Ø 类型检查强弱与自动类型转换密切相关。强类型语言 要求:转换后数据无损 转换前后类型的语义要相 + 容。 强类型语言,常见的有 、 、 等; Ø Pascal Java C# 弱类型语言,常见的有 、 、 等。强类型Ø语言可以充分利用强大的C类型VB检查Py功t能ho,n帮助 程序员在运行前检测出程序中的许多错误,从而在一定程度上提高软件 的可靠性。弱类型语言使用灵活、方便,但也更易出错。 14/29 程序设计语言重要属性 1.2 u 类型系统 1.2.2 n 静态语言和动态语言 Ø 静态:与编译器相关;动态:与运行时相关。 属性:不可变更的关联;绑定:可变更的关联。如 Ø …… Ø 静态语言要求类型静态绑定,动态语言要求类型动态 绑定,即运行时的不同时刻变量可以拥有不同的类型动态类型语。言有三大内伤:静St态at语ic言 可ty充pi分n利g 用wh编e译n 阶po段s的si语bl法e检, 查dy,n提am高ic程 序ty的pi可n靠g 性,1.类型的动静态态绑语。定言换让:言编之译、,器对的大错多误数、检类测型功,、能尽丧可失能殆、采尽用;静态类型同wh时en类 n型Øe信ed息ed也为编译 C优化P提as供ca帮l助。C+动+ 态J语a言va让一C#个变量在绑2.定变机量制存;储当空然间,须对能极够个弹别性特变殊化类,型执,行也开可销定大制;专门的动态类不同时刻Ø拥动有态不语同言的:类型,、这为编程带来很大的灵活性。型3.绑动定态机语制言。必须是解释 V型B语P言y。thon 15/29 程序设计语言重要属性 1.2 u 编译型语言和解释型语言 1.2.3 n 编译型语言 Ø以编译方式运行的语言 n 解释型语言 Ø以解释方式运行的语言 16/29 语言概述 1.3 Java 语言的诞生和发展1. Java 语言的特点2. Java 编程环境3. Java 程序的运行原理4. Java 17/29 语言概述 1.3 Javau 语言的诞生和发展 1.3.1 Java James Gosling n 产生背景 年 月, 成立了一个以 为 Ø 1990 12 Sun James Gosling 首的项目小组 ”the Green Project”(Secretly) ,基于 来开发消费电子类产品 嵌入式设备 。 C++ ( ) Ø 后发现问题: 嵌入式设备资源有限 程序太过庞大; ? VS C++ 芯片将嵌入不同硬件 程序难跨平台。 ? VS C++ 解决策略:依托 ,参照 、 ,设计 Ø C++ SmallTalk Ada 出小巧、够用、能跨平台的新语言。 年 诞生,因重名于 年更名为 。 Ø 1992 Oak 1995 Java 18/29 语言概述1.3 Java n 产生背景 新出,市场不成熟,生产商不用, 被搁置; Ø Oak Oak 年, 迅猛发展为 带来机遇: Ø 1993 Internet Java 网络环境是多种软硬件平台共存的异构环境,因此需 ?要能够支持跨平台的编程语言; ?当时网速很小,不支持体积庞大的网络程序。 ?上述要求与嵌入式平台的要求何其相像?! 调整 并新增 以及可运行 程序的浏 Ø Oak Applet Applet 览器 。动态网页的魅力引起了轰动。 HotJava 年, 、 、 、 、 、 Ø 1995 IBM Apple HP Oracle Nescape 微软等宣布支持 。 Java 19/29 语言概述 1.3 Javau 语言的诞生和发展 1.3.1 Java 的发展 n Java 年之前:十分简陋,程序运行速度也极低。甚至 Ø 1998 程序员之间交流经验,如何让 跑的更快。 Java 年 月,发布 ,对内核作了重大改进 Ø 1998 12 JDK 1.2 ,也废弃了许多原有成分。以至于 将 版之后 Sun 1.2 的 称之为 ,即第二代 。 Java Java 2 Java 年 月,发布 ,引入许多现代语言的高 Ø 2004 9 JDK 1.5 级特色,如泛型等。 对 版的 引领程序设 Sun 1.5 java 计语言的发展潮流充满期望,并为其取了个雄壮的名 字: 。 Tiger 20/29 语言概述 1.3 Javau 语言的特点 1.3.2 Java n 完全面向对象和简单性 相对于 支持过程式程序设计、机制较复杂而言 Ø C++ n 平台无关性 Ø 实现跨平台需要两个关键要素:虚拟机和字节码。 Ø 注意:不同平台有相同的字节码,但要用不同的虚拟 机 21/29 语言概述 1.3 Javau 语言的特点 1.3.2 Java n 安全性和可靠性 Ø 安全性,是指程序自身抵御外界攻击的能力。可靠性 ,是指系统在某时间段内运行不出错的几率。 Ø 网络程序对安全性和可靠性有着更为迫切的要求; 从语言的语法、到运行环境,为提升程序的安全 Ø Java 性和可靠性做了大量努力; 22/29 语言概述 1.3 Javau 语言的特点 1.3.2 Java n 并发和分布式计算的支持 有 机制,以支持分布式计算。用线程机制 ØJava RMI 支持并发执行。 n 高效的网络编程机制 雄起源自网络,强项也在网络编程。 ØJava Ø如提供常用网络通信协议的接口;使用流思想、序 列化思想等,来简化通信模型。甚至用 类 Object 作为始祖类,也有方便网络通信编程的目的。 23/29 语言概述 1.3 Javau 编程环境 1.3.3 Java 的组成 n JDK 24/29 语言概述 1.3 Javau 编程环境 1.3.3 Java 的下载、安装与设置 n JDK Ø http://java.sun.com/javase/downloads/index.jsp Ø 安装后,产生的目录结构介绍; 通过 ,可了解系统类内部设计细节。对理解 Ø src.zip 某些复杂机制非常有帮助; 、 的作用及设置 注意 Ø Path classPath ( classPath 路径设置时要添加 ";.\" ) 帮助文件的使用 n Java Ø 内容最权威也最全面 25/29 语言概述 1.3 Javau 编程环境 1.3.3 Java 的开发工具 n Java Ø JBuilder Ø Eclipse Ø NetBeans Ø Jcreator 26/29 语言概述 1.3 Javau 程序的运行原理 1.3.4 Java n 示例演示 程序的编译运行 n Java 27/29 语言概述 1.3 Javau 虚拟机的抽象内部体系结构 Java 28/29 实验 下载并安装 及其帮助文件;1. JDK 为 配置 和 ,并检验配置是否2. JDK path classpath 成功; 编写 程序,编译并运行之。3. HelloWorld 29/29 第 章 程序设计语言概述u 1 第 章 程序设计语言的基本成分u 2 第 章 程序设计方法概述u 3 第 章 面向对象语言基础u 4 第 章 类的管理及常用工具类u 5 第 章 异常处理和断言u 6 第 章 线程u 7 第 章 编程基础和u 8 GUI applet 第 章 流u 9 I/O 第 章 网络通信u 10 第 章 泛型与集合框架u 11 2/29 第 章 程序设计语言概述 1 u 程序的含义和程序设计策略 1.1 n 包括程序的含义、程序设计的通用策略u 程序设计语言重要属性 1.2 n 包括语言的范型、类型系统、编译和解释u 语言概述 1.3 Java n 包括诞生背景、发展、特点、开发环境、运行原理 本章重点 、理解程序、程序设计、程序设计语言三概念; 1 、 设计初衷、崛起原因、特点、环境配置。 2 Java 3/29 1.1 程序的含义和程序设计策略u 程序的含义 1.1.1 n “程序”并非计算机领域的专有名词 n 我们每天都接触和设计各种程序 数据类型很重要! n 计算机程序有自己的特点 数据类型 n 计算机程序的定义: Ø计算任务的处理对象和处理规则的描述。 对数据 核数心据特点有二:每、日表例达行计程算序::需起要床描洗述漱数据吃和饭的处处理上理数学据的成分;术1 语的名字常与其含义- 密切-相关。- 程序, ,设、计由程计序算:机制理定解训和练执计行划:、需组程织序词描句述表符达合某pr计种o算g思r机a想m特点,本2 意为:计划、节目单,即按照某种顺序做事。程如序用设内计存:存为储满数足据特、定含需义求的,唯将一一性组、动机作械设计定算次序。 …… 4/29 1.1 程序的含义和程序设计策略u 程序设计的通用策略 1.1.2 n 经千百年锤炼出的策略,如: Ø理清思路、掌控主次; Ø先抓主要矛盾,再抓次要矛盾; Ø先定纲要,再写内容。 n 计算机程序开发的经典策略:自顶向下逐步求精 于 年提出; ØN. Wirth 1971 Ø要点:编制程序应分若干步进行,逐步细化。 5/29注意事项:至少可以有两种分解方式:自顶向下逐程步求序精的的精含髓,义就和是简程化问序题设求解计步骤策,略即复杂注1.意)1按事.日1项 程 :分解,即第一天/第二天比赛项目、…;问题可分为简单的几步,每一步骤又是简单的几步,如此,应2.注)按意类每别次分分解解,出田子径目(标短/子跑步、骤长或跑者、不…宜)过、多体。操为、什…么;?直n 至自某顶一向步下骤逐可步通求过一精条指令示/过例程:/成组熟织算一法场来运完动成。会哪种方式较好,为什么? —— 1 运动会实施计划 程序名 运动会实 开幕式 施计划 运动会实施计划 1. 运动员入场 1.1 相关人员讲话 1.2 开幕式 相关表演 明确、 1. 1.3 无歧义、 各项比赛 程序体 2. …… ··· 能真正 闭幕式 各项比赛 3. 2. 实施的 …… 闭幕式 计划 3. 第1步程序 …… 第2步程序 第n步程序 6/29 1.1 程序的含义和程序设计策略 优化:是否可以将2、3两步合并? 自顶向下逐步求精 示例 : n 能否改进等问题 —,—应 当成为2 一种常态思维。 给定有序数组 。现输入一个整数,将其插 Ø a[0..n-1] 入该数组的合适位置,使其仍有序。f(int[]a,int len) f(int[]a,int len) f(int[]a, int len) 输入数据; 1) 输入数据; 找位置;1) 2) 用 、 找位置; Java C2) …… ··· 等语言书写 移出空位; 移出空位;3) 3) 的源代码 实施插入。4) 移动起/止/规律 实施插入。 4) 7/29 1.1 程序的含义和程序设计策略u 运行程序的两种基本方式 1.1.3 n 两种:编
关 键 词:
程序设计语言概述 ppt、pptx格式 免费阅读 下载 天天文库
 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:程序设计语言概述
链接地址: https://www.wenku365.com/p-39780571.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给天天文库发消息,QQ:1290478887 - 联系我们

本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:1290478887 欢迎举报。

1290478887@qq.com 2017-2027 https://www.wenku365.com 网站版权所有

粤ICP备19057495号 

收起
展开