程序设计语言概述.pptx





《程序设计语言概述.pptx》由会员分享,可在线阅读,更多相关《程序设计语言概述.pptx(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2/29目录目录u第第1章章 程序设计语言概述程序设计语言概述u第第2章章 程序设计语言的基本成分程序设计语言的基本成分u第第3章章 程序设计方法概述程序设计方法概述u第第4章章 面向对象语言基础面向对象语言基础u第第5章章 类的管理及常用工具类类的管理及常用工具类u第第6章章 异常处理和断言异常处理和断言u第第7章章 线程线程u第第8章章 GUI编程基础和编程基础和appletu第第9章章 I/O流流u第第10章章 网络通信网络通信u第第11章章 泛型与集合框架泛型与集合框架3/29第第1章章 程序设计语言概述程序设计语言概述u1.1 程序的含义和程序设计策略程序的含义和程序设计策略n包括程
2、序的含义、程序设计的通用策略包括程序的含义、程序设计的通用策略u1.2 程序设计语言重要属性程序设计语言重要属性n包括语言的范型、类型系统、编译和解释包括语言的范型、类型系统、编译和解释u1.3 Java语言概述语言概述n包括诞生背景、发展、特点、开发环境、运行原理包括诞生背景、发展、特点、开发环境、运行原理本章重点本章重点1、理解程序、程序设计、程序设计语言三概念;理解程序、程序设计、程序设计语言三概念;2、Java设计初衷、崛起原因、特点、环境配置。设计初衷、崛起原因、特点、环境配置。4/291.1 程序的含义和程序设计策略程序的含义和程序设计策略u1.1.1 程序的含义程序的含义n“程序
3、程序”并非计算机领域的专有名词并非计算机领域的专有名词n我们每天都接触和设计各种程序我们每天都接触和设计各种程序n计算机程序有自己的特点计算机程序有自己的特点n计算机程序的定义:计算机程序的定义:计算任务的处理对象和处理规则的描述。计算任务的处理对象和处理规则的描述。术语的名字常与其含义密切相关。程序,术语的名字常与其含义密切相关。程序,program,本意为:计划、节目单,即按照某种顺序做事。本意为:计划、节目单,即按照某种顺序做事。每日例行程序:起床每日例行程序:起床-洗漱洗漱-吃饭吃饭-上学上学设计程序:制定训练计划、组织词句表达某种思想设计程序:制定训练计划、组织词句表达某种思想程序设
4、计:为满足特定需求,将一组动作设定次序程序设计:为满足特定需求,将一组动作设定次序核心特点有二:核心特点有二:1、表达计算:需要描述数据和处理数据的成分;、表达计算:需要描述数据和处理数据的成分;2、由计算机理解和执行:需程序描述符合计算机特点,、由计算机理解和执行:需程序描述符合计算机特点,如用内存存储数据、含义的唯一性、机械计算如用内存存储数据、含义的唯一性、机械计算。数据类型很重要!数据类型很重要!对数据对数据的处理的处理数据数据数据类型数据类型5/291.1 程序的含义和程序设计策略程序的含义和程序设计策略u1.1.2 程序设计的通用策略程序设计的通用策略n经千百年锤炼出的策略,如:经
5、千百年锤炼出的策略,如:理清思路、掌控主次;理清思路、掌控主次;先抓主要矛盾,再抓次要矛盾;先抓主要矛盾,再抓次要矛盾;先定纲要,再写内容。先定纲要,再写内容。n计算机程序开发的经典策略:自顶向下逐步求精计算机程序开发的经典策略:自顶向下逐步求精N.Wirth于于1971年提出;年提出;要点:编制程序应分若干步进行,逐步细化。要点:编制程序应分若干步进行,逐步细化。6/29n自顶向下逐步求精自顶向下逐步求精 示例示例1:组织一场运动会:组织一场运动会1.1 程序的含义和程序设计策略程序的含义和程序设计策略1.开幕式开幕式2.各项比赛各项比赛3.闭幕式闭幕式运动会实施计划运动会实施计划程序名程序
6、名程序体程序体1.开幕式开幕式1.1 运动员入场运动员入场1.2 相关人员讲话相关人员讲话1.3 相关表演相关表演2.各项比赛各项比赛 3.闭幕式闭幕式 运动会实施计划运动会实施计划第第1步程序步程序第第2步程序步程序明确、明确、无歧义、无歧义、能真正能真正实施的实施的计划计划运动会实运动会实施计划施计划第第n步程序步程序注意事项:注意事项:应注意每次分解出子目标应注意每次分解出子目标/子步骤或者不宜过多。为什么?子步骤或者不宜过多。为什么?注意事项:至少可以有两种分解方式:注意事项:至少可以有两种分解方式:1.)1.)按日程分解,即第一天按日程分解,即第一天/第二天比赛项目、第二天比赛项目、
7、;2.)2.)按类别分解,田径(短跑、长跑、按类别分解,田径(短跑、长跑、)、体操、)、体操、;哪种方式较好,为什么?哪种方式较好,为什么?自顶向下逐步求精的精髓,就是简化问题求解步骤,即复杂自顶向下逐步求精的精髓,就是简化问题求解步骤,即复杂问题可分为简单的几步,每一步骤又是简单的几步,如此,问题可分为简单的几步,每一步骤又是简单的几步,如此,直至某一步骤可通过一条指令直至某一步骤可通过一条指令/过程过程/成熟算法来完成。成熟算法来完成。7/291.1 程序的含义和程序设计策略程序的含义和程序设计策略n自顶向下逐步求精自顶向下逐步求精 示例示例2:给定有序数组给定有序数组a0.n-1。现输入
8、一个整数,将其插。现输入一个整数,将其插入该数组的合适位置,使其仍有序。入该数组的合适位置,使其仍有序。1)输入数据输入数据;2)找位置找位置;3)移出空位移出空位;4)实施插入实施插入。f(inta,int len)1)输入数据输入数据;2)找位置找位置;3)移出空位移出空位;移动起移动起/止止/规律规律4)实施插入实施插入。f(inta,int len)优化:是否可以将优化:是否可以将2 2、3 3两步合并?两步合并?能否改进等问题,应当成为一种常态思维。能否改进等问题,应当成为一种常态思维。用用Java、C等语言书写等语言书写的源代码的源代码f(inta,int len)8/291.1
9、程序的含义和程序设计策略程序的含义和程序设计策略u1.1.3 运行程序的两种基本方式运行程序的两种基本方式n两种:编译方式和解释方式两种:编译方式和解释方式n编译方式:编译方式:编:编辑(优化),译:翻译编:编辑(优化),译:翻译做法:用编译器将源代码全部一次性地翻译成二进制做法:用编译器将源代码全部一次性地翻译成二进制代码代码语言:语言:C/C+、Pascal/Delphi、优点:能提高代码质量、程序执行速度快优点:能提高代码质量、程序执行速度快缺点:程序运行期间,程序员无法干预缺点:程序运行期间,程序员无法干预编译器编译器硬件硬件源代码源代码二进制代码二进制代码9/291.1 程序的含义和
10、程序设计策略程序的含义和程序设计策略u1.1.3 运行程序的两种基本方式运行程序的两种基本方式n解释方式解释方式做法:用解释器将源代码逐句翻译源码,逐句执行;做法:用解释器将源代码逐句翻译源码,逐句执行;语言:语言:Basic/VB、Java、C#、JSP、XML、优点:能监控程序执行,可通过在解释器(也称虚拟优点:能监控程序执行,可通过在解释器(也称虚拟机)中新增机制或模拟硬件,提供更多更高级的语言机)中新增机制或模拟硬件,提供更多更高级的语言机制;机制;缺点:代码很难优化(为什么?)、程序执行速度慢缺点:代码很难优化(为什么?)、程序执行速度慢解释器解释器(虚拟机虚拟机)硬件硬件源代码源代
11、码二进制代码二进制代码目前,解释性语言日渐兴起。源于两点:目前,解释性语言日渐兴起。源于两点:1.)1.)速度足以应对速度足以应对普通应用普通应用;2.);2.)易于扩充高级语言机制易于扩充高级语言机制10/291.2 程序设计语言重要属性程序设计语言重要属性1.语言的设计范型语言的设计范型2.类型系统类型系统3.编译型语言和解释型语言编译型语言和解释型语言11/291.2 程序设计语言重要属性程序设计语言重要属性u1.2.1 语言的设计范型语言的设计范型n计算是计算机最核心任务。语言的设计范型就是如计算是计算机最核心任务。语言的设计范型就是如何看待计算,这是描述计算的前提和基础。例如:何看待
12、计算,这是描述计算的前提和基础。例如:n目前主流有四种范型:目前主流有四种范型:命令式范型:计算就是用指令去修改数据;命令式范型:计算就是用指令去修改数据;面向对象式范型:计算就是对象间的互操作;面向对象式范型:计算就是对象间的互操作;函数式范型:计算就是对数学函数的求解;函数式范型:计算就是对数学函数的求解;逻辑式范型:计算就是为做出逻辑判定而进行的推理。逻辑式范型:计算就是为做出逻辑判定而进行的推理。范型框定了程序最基本的范畴。例如,对命令式语言,基础范型框定了程序最基本的范畴。例如,对命令式语言,基础成分就是指令、数据,这样才能表达命令式的计算。成分就是指令、数据,这样才能表达命令式的计
13、算。12/291.2 程序设计语言重要属性程序设计语言重要属性u1.2.2 类型系统类型系统n类型系统是程序设计语言最为核心的成分之一。类型系统是程序设计语言最为核心的成分之一。涉及数据如何组织、分类,新类别怎样构造,类型涉及数据如何组织、分类,新类别怎样构造,类型如何使用,以及类型安全等方面。如何使用,以及类型安全等方面。n主要讨论主要讨论分类和构造分类和构造强类型和弱类型强类型和弱类型静态语言和动态语言静态语言和动态语言13/291.2 程序设计语言重要属性程序设计语言重要属性u1.2.2 类型系统类型系统n分类和构造分类和构造分类策略:基本类型分类策略:基本类型+新类型构造机制新类型构造
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计语言 概述

限制150内