下一页
计算机软件基础
The software basic
of computer
主讲:刘志强
西安交通大学
计算机教学实验中心
第 11单元
数据库 _1
数据库概述
下一页
上一页
停止放映
第 2页
教学目标、要求
? 了解什么是数据库
? 了解什么是数据模型
? 了解数据处理技术的发展变
化及趋势
下一页
上一页
停止放映
第 3页
涉及的章节
? 第 6章 数据库系统基础
– 6.1 概述
– 6.2 数据模型
– 6.3 数据库系统的结构
? 第 8章 实用关系数据库管理系统应基础
– 8.1 计算模式介绍
下一页
上一页
停止放映
第 4页
一、基本概念
? 数据处理 (DataProcessing)
是计算机应用中的最大的一个分支。最
初指在计算机上加工商业、企业的信息
和数据,现在常用来泛指非科技工程方
面的计算、管理和操纵任何形式的数据
资料。
下一页
上一页
停止放映
第 5页
数据库 (DataBase)
? 在计算机上合理存放的相互关联的数据的
集合,被称为数据库 ;它具有下列特点,
– 最小冗余 (尽可能不重复 )
– 可以最优方式提供数据共享
– 数据的独立性
– 实现数据的统一管理
? 数据库技术是数据处理最有效的手段
下一页
上一页
停止放映
第 6页
数据库技术发展历史
? 数据库 ( DB) 技术是管理数据的一种最
新方法 。
? 它起源于 60年代末 。 30多年来, 在理论
上, 实现技术上都有很大的发展 。
? 特别是在 PC机上推出 XBASE系统 DBS后,
使数据库技术走出实验室, 从专业人员
掌握的特殊工具变为普通用户手中的一
般数据处理工具 。
? 现在, DB已成为 MIS,OA,CAM等领域的
主要工具之一 。
下一页
上一页
停止放映
第 7页
数据管理的发展阶段
? 数据管理经历了 4个发展阶段:
– 手工管理阶段
– 文件系统阶段
– 数据库系统阶段
– 分布式数据库系统阶段
下一页
上一页
停止放映
第 8页
手工管理阶段( 46~50年代中期)
? 早期计算机数据处理应用没有专门管理数
据的软件,程序自带数据。其特点是:
– 数据独立性差,不能共享;
– 数据冗余
– 无法集中式管理
– 主要用于科学计算
应用程序 1
应用程序 n
…...
数据组 1
数据组 n
…...
下一页
上一页
停止放映
第 9页
文件系统阶段( 50~60年代)
? 数据以文件的形式存放于外存中,数据由文件
系统 FS和操作系统 OS统一管理,数据通过程序
方式来实现操作。其特点是:
– 文件系统是应用程序和数据间的公共接口、
统一存取;
– 文件由用户自定义,格式和内容不统一,难
于共享;
– 数据冗余度大
– 文件系统本身无法解决这些问题。
应用程序 1
应用程序 n
…...
数据组 1
数据组 m
…...文件系统
下一页
上一页
停止放映
第 10页
数据库系统阶段( 60年代 ~至今)
? 由 DBMS实现对 DB的定义、管理和操作。 DBMS是
用户和数据间的接口,特别是网络和通信技术
的发展,使异地、异机间的数据共享成为现实。
其特点是:
– 能为多用户共享
– 数据冗余度最小
– 可以交互方式或程序方式操作
? 问题,异地共享一处的数据,容易造成网络通信
,堵塞, 应用程序 1
应用程序 n
…..,DBMS DB
下一页
上一页
停止放映
第 11页
数据通信
局域网 LAN 远程通信
...
DBMS
DB
实时方式
M M
接收器
DBMS
DB 非实时方式
下一页
上一页
停止放映
第 12页
分布式数据库系统阶段( 80年代中期 )
? 分布式数据库 DDBS(Distributed DBS)技术是 DB技
术和网络、通信技术的结晶产物。
? 其主要特点:
– 处理的数据分散在各个结点上,每个结点的数
据由本地的 DBMS管理,各结点间可以数据共享;
– 充分利用、发挥各个结点的资源优势,减轻网
络负担;
DBMS1 DBMSi
DB1 DBi
DDBMS
…,.
下一页
上一页
停止放映
第 13页
数据库技术的发展方向
? 数据库的发展方向:
– 可视化
– 多媒体
– 面向对象的处理
– 交叉平台
– 开放式
? 现代数据库还要具有:
数据仓库、数据开采、知识发现、决
策支持的功能。
下一页
上一页
停止放映
第 14页
几种常用的数据库
? XBASE 一种大众化的关系型数据库系统;类似
产品有,DBASE,FOXBASE,FOXPRO、
VFP等系列产品。
? Oracel 大型关系数据库管理系统,具有兼容性、
可移植性、可联接性、开放性、高生产率,支持
SQL等优点。
? Sybase 大型“客户机 /服务器数据库体系结构”
的 DMS 具有分布式处理等优点。
? Informix 是唯一具有“可伸缩、高性能”体系
结构的 DBMS。
? SQL Server 是建立在 Windows NT 上的
RDBMS。
下一页
上一页
停止放映
第 15页
对数据库研究的发展趋势
? 由于计算机应用的普及, 数据处理的社
会需求剧增, 极大地促进了 DB技术的发
展, 至今为止, 对 DB的研究主要集中在
以下几个方面:
– DB的设计方法
– DB规范理论
– 分布式 DBS
– 4GL及应用生成器
– 新一代 DBS——面向对象的 DB系统
下一页
上一页
停止放映
第 16页
DB的设计方法
? 目前的 DB设计方法,主要停留在经验与尝
试阶段,工程规范程度不高。主要方法有:
– 数据模型设计, 解决从现实世界到 DB
的逻辑描述
– 数据存储与访问方法的设计,根据数据
模型物理存储结构,确定用户访问数据
的方式;
– DB的管理与保护,解决 DB使用及维护中
的各种问题,例如,对用户友好、使用
简便、维护方便等。
下一页
上一页
停止放映
第 17页
DB规范理论
? 研究数据的语义问题 ( 即数据元素间的
关系 ) 构造规范的数据模型, 其目的是
使存储数据能正确地反映现实世界的联
系, 防止导出与客观实际矛盾的结果 。
? 目前这方面的工作越来越形式化, 抽象
化, 已成为一个独立的理论分支 。
下一页
上一页
停止放映
第 18页
4GL及应用生成器
? 第四代语言 ( 4GL) 来源于 DB查询语言, 例
如 SQL Server。 用户只需指出, 做什么,,
应用生成器自动生成相应的应用程序 。
? 这方面的研究可以使 DB应用系统开发趋于
自动化, 标准化, 从而提高系统的效率,
可靠性和可维护性 。
下一页
上一页
停止放映
第 19页
新一代 DBS— 面向对象的 DB系统
? 最新DB技术是面向对象
的数据库系统 OODBS,目前
还处于探索阶段 。
下一页
上一页
停止放映
第 20页
二、数据模型
? 从现实生活中的客观事物到存放于
计算机中的数据, 这样一个加工过
程可划分为三个领域:
– 现实世界, 观念世界和数据世界
? 表示实体之间联系的方式被称为 数
据模型, 而实体模型是从客观事物
中抽象得到的 。
下一页
上一页
停止放映
第 21页
现实世界
? 现实世界 是存在于人脑之外的客
观世界, 事物及其相互联系就存在
于这个世界中 。
? 事物可用, 对象, 和, 性质, 来描
述
? 又有, 共同事物, 和, 特殊事物,
两个不同级别 。
下一页
上一页
停止放映
第 22页
观念世界
? 观念世界 是现实世界在人脑中的
反映, 客观事物在概念世界中称为
,实体, 。
? 反映事物联系的是实体模型 。
? 实体用, 对象, 和, 属性, 来描述
? 又分为, 个体实体, 和, 总体实体,
两个级别 。
下一页
上一页
停止放映
第 23页
数据世界
? 数据世界 是数据在观念世界中信息
的数据化, 现实世界中的事物及联系
在这个世界中用数据模型来描述 。
? 数据模型反映的是数据间的联系 。
? 数据用, 数据记录, 和, 数据项, 来
描述;
? 又分为, 数据类型, 和, 数据值, 两
个不同级别 。
下一页
上一页
停止放映
第 24页
数据加工三个的领域关系
数据 数据分级
记录 项 项 值
数
据
模
型
实
体
模
型
事物
及
联系
实体分级实体
对象 属性 总体 个体
事物 事物分级
对象 性质 共同 特殊
抽
象
过
程
数据
世界
观念
世界
现实
世界
?客观世界是信息
之源,是设计 DB
的出发点。
?实体模型和数据
模型是对客观事
物的两级抽象描
述。
?数据库的核心问
题是数据模型。
结论:
要得到正确的数据模
型,必须首先充分了
解客观事物。
由此可见:
下一页
上一页
停止放映
第 25页
实体模型
? 实体模型 是用符号和文字描述的客
观事物的联系 。 要考虑下述问题:
– 对象与属性
– 个体与总体
– 总体之间的联系
– 实体模型
下一页
上一页
停止放映
第 26页
对象和属性
? 对象和属性 在概念世界中, 用实体来描述客
观事物, 实体可以是具体的, 也可以是抽象的:
– 具体实体,一个学生, 一辆汽车
– 抽象实体,一部法规, 一种算法
实体又可以分成, 对象, 和, 属性, 两类:
– 对象,人, 汽车, 工厂, 西安交通大学等
– 属性,用来描述对象的特征信息;例如,
,人, 的特征有,姓名, 性别, 民族, 籍贯,
出生日期等 。
– 在设计, 调研过程中, 要从不同角度, 观点
考虑, 分析实体及其属性 。
下一页
上一页
停止放映
第 27页
个体和总体
? 个体,指单个的相互区别的特定实体 。
人的个体:张三, 李四;学校的个体:
北大, 清华, 西安交大等;
? 总体,泛指某一类个体的集合 。, 人,
泛指张三, 李四等个体组成的集合 。
? 个体和总体的联系是对象的 外部联系 。
下一页
上一页
停止放映
第 28页
总体之间的联系
? 总体的个体之间有着某种联系, 联系方式又
分为三种:
– 一对一联系 实体 A中任一个体至多对应实体 B
中的一个个体, 反之亦然;则称 A和 B是一一对应
的联系 。 例如, 高考录取, 电影院看电影等 。
– 一对多联系 实体 A中至少有一个个体对应于实
体 B中一个以上的个体, 反之亦然, 则称这种联系
是, 一对多, 的联系 。 例如, 父亲对子女;院系
对班级等 。
– 多对多联系 实体 A中至少有一个个体对应于
实体 B中一个以上个体;反之, B中也至少有一个
个体对应于 A中一个以上的个体, 则称 A对 B是多对
多的联系 。 例如, 学生对课程, 工厂对产品等 。
下一页
上一页
停止放映
第 29页
实体模型
? 反映实体间联系的模型成为实体模型 。 分
析, 研究了客观事物及其联系后, 即可建
立实体模型 。 以教学为例:
? 教学由学生, 课程, 教师, 学习, 任课等
实体组成 。
? 学生属性有,学号, 姓名, 性别, 年龄,
班级
? 课程属性有,课程号, 课程名称
? 教师属性有,姓名, 课程号, 课时
? 学习属性有,学号, 课程号, 分数
? 任课属性有,教师名, 课程号, 教室
下一页
上一页
停止放映
第 30页
教学实体模型示意图
课程
学习 任课
教师学生
姓名、课程号、课时
教师名、课程号、教室
学号、姓名、性别、班级
课程号、课程名
学号、课程名、教室
下一页
上一页
停止放映
第 31页
数据模型
? 建立了实体模型后, 就可以建立数据模
型了 。
? 在 DBS中表示实体 ( 数据记录 ) 之间联
系的方式称为 数据模型 。 数据模型实际
上是数据间的一个整体逻辑结构图 。
? 为了使模型能清晰, 准确地反映客观事
物, 要进行数据模型的设计, 也即数据
库的设计 。
下一页
上一页
停止放映
第 32页
数据模型( DB)的设计
– 命名数据模型( 数据库名称 )
以示区别不同的模型,例如:成绩库,MDB
– 命名记录类型 (数据库结构 )
定义数据库记录结构,例如:成绩库记录
学号、课程号、分数
– 命名每个记录中的数据项( 字段 )
XH(学号),CNO(课程号),SCORE(分数)
– 说明各个记录类型之间的联系
– 指出各数据项的数据特征 数据类型、长度、值
域等。例如,XH,字符型,长度为 7
下一页
上一页
停止放映
第 33页
商店的数据关系模型
关系(库名) SHOP
店 名 地 址 经办人 电话
解放路食品店 解放路 262号 李国基 2-5036
桃园商场 桃园路 6号 张山 6-6161
香香瓜果店 北大街 26号 王宏 3-6201
白塔干鲜果店 西大街 56号 宋良 3-3637
北大街果品店 北大街 231号 林青 3-1116
关系框架
或
库结构
元组
或
记录
属性(字段)
属性
“电话”的
值
下一页
上一页
停止放映
第 34页
三种数据模型
? 数据模型的好坏直接影响到 DB的
性能 。 当前较流行的设计方法有
三种:关系, 层次和网络方法;
对应的模型为 关系模型, 层次模
型, 网络模型 。
下一页
上一页
停止放映
第 35页
层次模型
? 描述层次 ( 树形 ) 结构的模型 。
特点:
– 每个模型中只有一个称为根的最高结点
– 其它结点都只能和一个父结点相连接 ( 1,M)
– 查询, 访问都必须从根结点开始
? 最有影响的层次模型的 DBS是 60年代末,
IBM公司推出的 IMS层次模型数据库系统 。
下一页
上一页
停止放映
第 36页
层次模型示意图
校长
校长办公室 各学院 …… 各职能处
( 电信学院 )
计算机系 电子系 信控系 ….,计算机教学实验中心
网络所 ….,软件教研室
下一页
上一页
停止放映
第 37页
网络模型
图结构模型, 其特点:
– 可有 0个或多个结点无双亲
– 允许结点有多个双亲
– 允许结点间有 2种以上的关系
– 存取, 访问必须按事先定义好的路径进
行 ( 从指定出发点 )
最有影响的网络模型是美国数据系统语言
协 会 推 出 的 DBTG 系统, 也称 CODASYL
( Conference On Data System Languige)
下一页
上一页
停止放映
第 38页
网络模型举例
? 例如, 教务管理系统
学生
教学课程表
教室
课程
教师
下一页
上一页
停止放映
第 39页
关系模型
? 其组织形式是一张二维表, 一个表即一个
关系;其特点:
– 一个关系一张表
– 数据独立性高
– 操作简单
– 一行是一个记录
– 一列是一个数据项 ( 字段 )
典型的 RDBMS有,XBASE,VFP,Oracle、
Sybase,DB/2,Informix,Access
下一页
上一页
停止放映
第 40页
关系模型举例
商店关系
店 名 地 址 经办人 电话
解放路食品店 解放路 262号 李国基 2-5036
桃园商场 桃园路 6号 张山 6-6161
香香瓜果店 北大街 26号 王宏 3-6201
白塔干鲜果店 西大街 56号 宋良 3-3637
北大街果品店 北大街 231号 林青 3-1116
下一页
上一页
停止放映
第 41页
数据库的构成
DBS = 数据库 + 用户 + 软件 + 硬件
? 硬件:
指运行 DBS的硬件资源, 例如,
SQL Server要求至少 16MB内存, 32位 CPU、
至少 80MB硬盘空间;
? 软件,指 DBS操作平台, 例如 WINDOWS NT、
DBMS,汉字处理系统等;
? 用户,指终端用户, 应用程序员和数据库管
理员 。
下一页
上一页
停止放映
第 42页
数据库视图
由于观察的角度不同, 数据库中的数据的结构
有三种不同的视图:
– 用户视图 也称用户级 DB;即用户看到并可
操作的那部分数据
– 全局视图 也称概念级 DB;是数据库管理员
看到并可操作的全部数据
– 物理数据存储模式 也称物理级 DB;是 DB中
的各种信息在计算机中的实际分布和存储方
式, 它由操作系统和 DBMS直接管理, 用户不
必了解, 也不可能了解 。
下一页
上一页
停止放映
第 43页
三、计算模式简介
? 计算机应用技术日新月异的发展应归功于计
算技术的发展。计算技术的发展经历了三个
阶段:
? 单主机计算 ( Mainframe Computing)
? 分布式客户机 /服务器计算 ( Distributed
Client/Server Computing)
? 网络计算 ( Network Computing)
下一页
上一页
停止放映
第 44页
(一)单主机计算模式( 1955-1985)
? 以单台主机(功能强大)为中心,以非智
能终端构成的集中式计算环境。
? 特点, 整个系统资源由单用户或多用户共享
(分时技术),用户接口,I/O处理功能都集中在
主机上。
? 缺点, 当处理负载过大时,主机性能就成为制约
通信网络的, 瓶颈, 。
? 解决方法, 提高主机处理速度,增加主机数量。
但成本高、管理复杂。因此限制了单主机模式的
发展。
下一页
上一页
停止放映
第 45页
单主机计算模式的 30年
单主机计算模式经历了 30年的发展史,
按应用方式可划分为三个时代:
– 程序设计时代( 1955-1965)
– 结构化程序设计时代( 1965-1975)
– 软件工程时代( 1975-1985)
下一页
上一页
停止放映
第 46页
1、程序设计时代
? 硬件 早期是单主机,1960年后出现“主机 /哑
终端”结构形式;硬件由,CPU、内外存储器和
外部设备”组成。
? 软件 简单的操作系统、高级语言编译或解释
器,以及少量的库函数和系统支持程序。
? 应用领域 大型科学计算和数据处理
? 处理方式 分前台 /后台处理;前台由系统操作
员在控制台上作即席操作。后台以批处理方式服
务于用户。
? 系统分工 系统操作员和应用程序员;前者负责
操作,后者把高级语言作为虚拟机进行编程(不
管操作)。
下一页
上一页
停止放映
第 47页
程序设计时代(续)
? 编译技术 由于 CPU资源昂贵,高级编程语言
多为编译型;初步形成,编译 — 连接 — 加栽 —
运行,的运作模式。 60年代是编译技术的成熟
期。
? 程序设计 为节省系统资源,程序设计重点是
精选算法,语句精雕细琢,goto语句成了有力
的武器,流程图成了程序设计的指南。由于汇
编语言能够直接处理端口、中断、内存等实时
操作,被认为是程序员应掌握的基本功。对大
型程序采用,自顶向下,分析、求解的方法。
下一页
上一页
停止放映
第 48页
2、结构化程序设计时代
? 1962年美国金星探测器水手 II号卫星失败,
计算机界引起巨大震动。如何保证软件安
全、可靠?
? 由此引发了一场关于,GOTO” 语句的争战。
– 从理论上无法证明“带 GOTO的程序是正确
的”;
– 程序测试只能证明,程序有错,,而不能证
明,程序无错,;
– 从理论上可以证明“只用三大基本程序结构
(顺序、分支、循环)就可以实现任何算法”;
– 最后论战的结论“限制、最终取消 GOTO语
句”。
? 结构化程序设计方法
? 数据库技术
下一页
上一页
停止放映
第 49页
结构化程序设计方法
? 定义一 (北京大学 王选院士)
– 没有 GOTO 语句
– 一个入口一个出口
– 自顶向下、逐步求精的分解
– 主程序员组
? 定义二 (清华大学 潭浩强教授)
– 自顶向下
– 逐步求精
– 模块化设计
– 结构化编码
下一页
上一页
停止放映
第 50页
结构化程序设计方法的特点
? 程序结构规范化
– 便于编程、调试、阅读
? 大化小,难化简,提高编程效率
– 符合人们解决问题的习惯
– 便于自顶向下地求解
? 便于集团协同作业
– 模块化适合并行开发方式
? 扩大了求解问题的规模
– 70年代,程序最大已达 385万句(美国国防
部导弹预警系统 )
下一页
上一页
停止放映
第 51页
数据库技术
? 数据文件的形式不适合管理海量数据
– 随着解题规模的扩大,处理的数据量急剧增加
– 用文件保存数据“难维护、难检索、难共享”的问题日益突出
– 从 60年代中期开始研究数据库系统 DBS
? 数据库系统 DBS是专门处理和维护数据的软件系统
– 具有数据定义、操纵的语言
– 提供统一的 SQL结构查询语言
? 数据库的成功被认为是 70年代计算机界的一大成就
– 从此信息处理走上正轨
? 关系型数据库
– 数据元素之间存在一一对应关系(以二维表形式表示)的数据
模型。因系统简单而被广泛采用。例如,FoxPRO,SQL
Server, ORACLE等关系型数据库系统。
下一页
上一页
停止放映
第 52页
3、软件工程时代
? 随着社会对软件需求的日益增长,软件的规模
也越来越大(例如,美国 1979年的哥伦比亚航
天飞机系统 4000万条指令),这与软件的生产
方式落后、生产效率低形成尖锐的矛盾,由次
产生,软件危机,。
? 为研究、解决软件危机,诞生了,软件工程
学,。人们开始研究软件生产内部的规律,找
出,软件生存周期,,用工程化的原理,科学
地组织软件的生产,在一定程度上提高了软件
的生产效率。
? 软件生产开始步入软件工程时代。
下一页
上一页
停止放映
第 53页
软件危机主要体现在,
? 软件开发工程进度难以预测
– 工期一再拖延,降低了开发组织的信誉
? 软件开发成本难以控制
– 投入一再追加,令人难以置信
? 软件系统中的错误难以消除,质量无法保证
– 绝对没错的软件不存在
? 产品难以维护
– 软件产品本质上是代码化的人的思维活动,他人难以
替代
? 典型的例子 IBM公司开发 OS/360系统,投入
5000人年,耗资数亿美元,结果还是延期交付,
使用后系统中仍发现大量错误。
下一页
上一页
停止放映
第 54页
软件工程学
? 软件工程学是把软件开发作为工程对象来研究,从
技术措施和组织管理两个方面研究、解决软件危机
的学科。软件工程方法论是开发软件的指导方法和
必修课。进 30年来,软件工程学已发展成一定的体
系结构。
软件工程学
软件开发技术
软件工程管理
软件开发方法学
软件工具
软件工程环境
软件管理学
软件经济学
下一页
上一页
停止放映
第 55页
传统程序设计方法的缺点
传统的程序设计方法虽然缓解了软件危机,
但并不能完全消除软件危机,传统方法本
身存在不可克服的问题。表现在:
? 生产率提高的幅度远不能满足需要
? 软件重用程度很低
? 软件难以维护
? 软件不能真正满足用户的需要
– 据统计,在美国开发的软件系统中,真正符合
用户要求并顺利投入使用的系统只占 1/4,夭折
的系统占 1/4,近 1/2的系统,虽完成了开发过
程,但并未被用户采用或未被长期使用。
下一页
上一页
停止放映
第 56页
面向对象程序设计技术
? 现实世界的问题空间和软件的解空间之间
存在很大的距离。业界人士从未中断过缩
小这个距离的努力。 面向对象 ( OO-
Object Oriented)方法是这种努力的一大
成果。
? OO方法围绕现实世界的概念来组织模型,
是一种全新的思考问题的方法。
? OO方法将客观世界看成是由许多不同种类
的对象构成的。每个对象都有自己的内部
状态和运动规律。不同对象之间的相互联
系和相互作用就构成了完整的客观世界。
下一页
上一页
停止放映
第 57页
OO方法的要点
( 1)客观世界由各种对象组成。 OO的软件系统也是由
对象组成的。任何复杂的软件都是由简单的对象组合
而成的;
( 2)所有对象都可划分为不同的对象类。每个对象类
都有自己特定的数据和方法;
( 3)对象类具有层次结构;上层的类称为“父类”或
“基类”,下层的类称为“子类”或“派生类”。子
类可以继承父类的特性及操操作;
( 4)对象之间通过传递消息互相联系(消息机制)。
OO方法 = 对象 + 对象类 + 继承性 + 消息机制
下一页
上一页
停止放映
第 58页
(二)分布式客户机 /服务器计算模式
( 80年代 — 至今)
? 微机应用
由于大规模集成电路技术的发展,微处理器
诞生。 80年代初,PC机进入市场,由此开
始了微机应用新时代。
? 特点
– 微机功能强大、性能价格比占优,市场占有率高
– 各种 PC机版本的语言编译器应有尽有
– 大众化数据库( Dbase,FoxPRO等)问世
– 形成 PC机应用软件的巨大市场
下一页
上一页
停止放映
第 59页
网络应用
由于单机资源有限,应市场需求,70年代中期出现
了一批局域网 LAN(例如,3+网、以太网,Novell
网等)。经过 10年发展,局域网技术日趋完善,进
入网络( LAN)时代。
? 特点
– 采用网络 /文件服务器模式;共享数据存放在文件服务器,
网上其它 PC机通过网卡、以双绞线或同轴电缆联接,形成
局域网 LAN;适合一般企、事业单位的信息管理。
– LAN是分布式技术的应用(网上 PC机独立运行),借助网
络实现异地资源共享。
? 缺点
– 由于网上所有 PC机需求的数据都在网中传输,当网上用户
增加,网间存取频繁时,网上冲突增加,甚至造成系统瘫
痪。
下一页
上一页
停止放映
第 60页
客户机 /服务器应用
? 随网络技术日益完善,1985年 C/S计算模式问世,
使得资源共享进一步深化,有效地解决了文件服
务器不能充分共享资源的问题。
? 特点
– Pentium CPU问世,出现了功能更强大、适合
图形处理和网络通信的工作站。硬件结构仍是
主 -从式。
– C/S技术可以说是一种软件机制。它将程序分为
客户端和服务器端两种类型;系统工作方式是
“请求 —响应 —处理 —返还”。
? 主 --从式和 C/S方式的区别
– 主 --从式传输所有的数据和文件(传输量大)
– C/S方式只传输请求和结果(传输量小)
下一页
上一页
停止放映
第 61页
客户机 /服务器方式的优、缺点
? 优点
– 减少了网络的流量和冲突的机率
– 响应快、处理效率高
– 真正体现了分布式处理环境、充分发
挥了各地系统资源的作用
– 在网上可以支持更多数量的用户
? 缺点
– 计算(处理)对于通信的依赖越来越
大。因此,通信效率直接影响 C/S方
式的效率。
下一页
上一页
停止放映
第 62页
(三)网络计算模式( 90年代起)
随着网络效率显著,网越联越大,开始出现广域
网 WAN。国际互联网 Internet标志着网络时代到
来。
? 特点
– 以 WWW( World Wide Web环球网)、主页文档标准化
( HTML)和 Java语言三大技术成熟为标志
– NC计算机问世,它带有各种多媒体的接口、高速 CPU、
大容量内存、高级显示器等
– 软件服务众多 WWW,FTP,Telnet,E-mail,BBS等
– 网上每个用户权力均等
– 网上信息资源取之不尽用之不竭。
下一页
上一页
停止放映
第 63页
作业、思考题
1,第 6章思考题:
1,2,3,4,5、
2,作业,
15
下一页
上一页
停止放映
第 64页
结束语
? 欢迎参加到中心网站, 软件基础, 课程的学习
讨论中来。
? 中心网址:
http,//ctec.xjtu.edu.cn
? 课件下载地址,
ftp,//ctec.xjtu.edu.cn
? 我的 E-mail地址,
LZQ_2668634@263.net
谢谢,再见!
计算机软件基础
The software basic
of computer
主讲:刘志强
西安交通大学
计算机教学实验中心
第 11单元
数据库 _1
数据库概述
下一页
上一页
停止放映
第 2页
教学目标、要求
? 了解什么是数据库
? 了解什么是数据模型
? 了解数据处理技术的发展变
化及趋势
下一页
上一页
停止放映
第 3页
涉及的章节
? 第 6章 数据库系统基础
– 6.1 概述
– 6.2 数据模型
– 6.3 数据库系统的结构
? 第 8章 实用关系数据库管理系统应基础
– 8.1 计算模式介绍
下一页
上一页
停止放映
第 4页
一、基本概念
? 数据处理 (DataProcessing)
是计算机应用中的最大的一个分支。最
初指在计算机上加工商业、企业的信息
和数据,现在常用来泛指非科技工程方
面的计算、管理和操纵任何形式的数据
资料。
下一页
上一页
停止放映
第 5页
数据库 (DataBase)
? 在计算机上合理存放的相互关联的数据的
集合,被称为数据库 ;它具有下列特点,
– 最小冗余 (尽可能不重复 )
– 可以最优方式提供数据共享
– 数据的独立性
– 实现数据的统一管理
? 数据库技术是数据处理最有效的手段
下一页
上一页
停止放映
第 6页
数据库技术发展历史
? 数据库 ( DB) 技术是管理数据的一种最
新方法 。
? 它起源于 60年代末 。 30多年来, 在理论
上, 实现技术上都有很大的发展 。
? 特别是在 PC机上推出 XBASE系统 DBS后,
使数据库技术走出实验室, 从专业人员
掌握的特殊工具变为普通用户手中的一
般数据处理工具 。
? 现在, DB已成为 MIS,OA,CAM等领域的
主要工具之一 。
下一页
上一页
停止放映
第 7页
数据管理的发展阶段
? 数据管理经历了 4个发展阶段:
– 手工管理阶段
– 文件系统阶段
– 数据库系统阶段
– 分布式数据库系统阶段
下一页
上一页
停止放映
第 8页
手工管理阶段( 46~50年代中期)
? 早期计算机数据处理应用没有专门管理数
据的软件,程序自带数据。其特点是:
– 数据独立性差,不能共享;
– 数据冗余
– 无法集中式管理
– 主要用于科学计算
应用程序 1
应用程序 n
…...
数据组 1
数据组 n
…...
下一页
上一页
停止放映
第 9页
文件系统阶段( 50~60年代)
? 数据以文件的形式存放于外存中,数据由文件
系统 FS和操作系统 OS统一管理,数据通过程序
方式来实现操作。其特点是:
– 文件系统是应用程序和数据间的公共接口、
统一存取;
– 文件由用户自定义,格式和内容不统一,难
于共享;
– 数据冗余度大
– 文件系统本身无法解决这些问题。
应用程序 1
应用程序 n
…...
数据组 1
数据组 m
…...文件系统
下一页
上一页
停止放映
第 10页
数据库系统阶段( 60年代 ~至今)
? 由 DBMS实现对 DB的定义、管理和操作。 DBMS是
用户和数据间的接口,特别是网络和通信技术
的发展,使异地、异机间的数据共享成为现实。
其特点是:
– 能为多用户共享
– 数据冗余度最小
– 可以交互方式或程序方式操作
? 问题,异地共享一处的数据,容易造成网络通信
,堵塞, 应用程序 1
应用程序 n
…..,DBMS DB
下一页
上一页
停止放映
第 11页
数据通信
局域网 LAN 远程通信
...
DBMS
DB
实时方式
M M
接收器
DBMS
DB 非实时方式
下一页
上一页
停止放映
第 12页
分布式数据库系统阶段( 80年代中期 )
? 分布式数据库 DDBS(Distributed DBS)技术是 DB技
术和网络、通信技术的结晶产物。
? 其主要特点:
– 处理的数据分散在各个结点上,每个结点的数
据由本地的 DBMS管理,各结点间可以数据共享;
– 充分利用、发挥各个结点的资源优势,减轻网
络负担;
DBMS1 DBMSi
DB1 DBi
DDBMS
…,.
下一页
上一页
停止放映
第 13页
数据库技术的发展方向
? 数据库的发展方向:
– 可视化
– 多媒体
– 面向对象的处理
– 交叉平台
– 开放式
? 现代数据库还要具有:
数据仓库、数据开采、知识发现、决
策支持的功能。
下一页
上一页
停止放映
第 14页
几种常用的数据库
? XBASE 一种大众化的关系型数据库系统;类似
产品有,DBASE,FOXBASE,FOXPRO、
VFP等系列产品。
? Oracel 大型关系数据库管理系统,具有兼容性、
可移植性、可联接性、开放性、高生产率,支持
SQL等优点。
? Sybase 大型“客户机 /服务器数据库体系结构”
的 DMS 具有分布式处理等优点。
? Informix 是唯一具有“可伸缩、高性能”体系
结构的 DBMS。
? SQL Server 是建立在 Windows NT 上的
RDBMS。
下一页
上一页
停止放映
第 15页
对数据库研究的发展趋势
? 由于计算机应用的普及, 数据处理的社
会需求剧增, 极大地促进了 DB技术的发
展, 至今为止, 对 DB的研究主要集中在
以下几个方面:
– DB的设计方法
– DB规范理论
– 分布式 DBS
– 4GL及应用生成器
– 新一代 DBS——面向对象的 DB系统
下一页
上一页
停止放映
第 16页
DB的设计方法
? 目前的 DB设计方法,主要停留在经验与尝
试阶段,工程规范程度不高。主要方法有:
– 数据模型设计, 解决从现实世界到 DB
的逻辑描述
– 数据存储与访问方法的设计,根据数据
模型物理存储结构,确定用户访问数据
的方式;
– DB的管理与保护,解决 DB使用及维护中
的各种问题,例如,对用户友好、使用
简便、维护方便等。
下一页
上一页
停止放映
第 17页
DB规范理论
? 研究数据的语义问题 ( 即数据元素间的
关系 ) 构造规范的数据模型, 其目的是
使存储数据能正确地反映现实世界的联
系, 防止导出与客观实际矛盾的结果 。
? 目前这方面的工作越来越形式化, 抽象
化, 已成为一个独立的理论分支 。
下一页
上一页
停止放映
第 18页
4GL及应用生成器
? 第四代语言 ( 4GL) 来源于 DB查询语言, 例
如 SQL Server。 用户只需指出, 做什么,,
应用生成器自动生成相应的应用程序 。
? 这方面的研究可以使 DB应用系统开发趋于
自动化, 标准化, 从而提高系统的效率,
可靠性和可维护性 。
下一页
上一页
停止放映
第 19页
新一代 DBS— 面向对象的 DB系统
? 最新DB技术是面向对象
的数据库系统 OODBS,目前
还处于探索阶段 。
下一页
上一页
停止放映
第 20页
二、数据模型
? 从现实生活中的客观事物到存放于
计算机中的数据, 这样一个加工过
程可划分为三个领域:
– 现实世界, 观念世界和数据世界
? 表示实体之间联系的方式被称为 数
据模型, 而实体模型是从客观事物
中抽象得到的 。
下一页
上一页
停止放映
第 21页
现实世界
? 现实世界 是存在于人脑之外的客
观世界, 事物及其相互联系就存在
于这个世界中 。
? 事物可用, 对象, 和, 性质, 来描
述
? 又有, 共同事物, 和, 特殊事物,
两个不同级别 。
下一页
上一页
停止放映
第 22页
观念世界
? 观念世界 是现实世界在人脑中的
反映, 客观事物在概念世界中称为
,实体, 。
? 反映事物联系的是实体模型 。
? 实体用, 对象, 和, 属性, 来描述
? 又分为, 个体实体, 和, 总体实体,
两个级别 。
下一页
上一页
停止放映
第 23页
数据世界
? 数据世界 是数据在观念世界中信息
的数据化, 现实世界中的事物及联系
在这个世界中用数据模型来描述 。
? 数据模型反映的是数据间的联系 。
? 数据用, 数据记录, 和, 数据项, 来
描述;
? 又分为, 数据类型, 和, 数据值, 两
个不同级别 。
下一页
上一页
停止放映
第 24页
数据加工三个的领域关系
数据 数据分级
记录 项 项 值
数
据
模
型
实
体
模
型
事物
及
联系
实体分级实体
对象 属性 总体 个体
事物 事物分级
对象 性质 共同 特殊
抽
象
过
程
数据
世界
观念
世界
现实
世界
?客观世界是信息
之源,是设计 DB
的出发点。
?实体模型和数据
模型是对客观事
物的两级抽象描
述。
?数据库的核心问
题是数据模型。
结论:
要得到正确的数据模
型,必须首先充分了
解客观事物。
由此可见:
下一页
上一页
停止放映
第 25页
实体模型
? 实体模型 是用符号和文字描述的客
观事物的联系 。 要考虑下述问题:
– 对象与属性
– 个体与总体
– 总体之间的联系
– 实体模型
下一页
上一页
停止放映
第 26页
对象和属性
? 对象和属性 在概念世界中, 用实体来描述客
观事物, 实体可以是具体的, 也可以是抽象的:
– 具体实体,一个学生, 一辆汽车
– 抽象实体,一部法规, 一种算法
实体又可以分成, 对象, 和, 属性, 两类:
– 对象,人, 汽车, 工厂, 西安交通大学等
– 属性,用来描述对象的特征信息;例如,
,人, 的特征有,姓名, 性别, 民族, 籍贯,
出生日期等 。
– 在设计, 调研过程中, 要从不同角度, 观点
考虑, 分析实体及其属性 。
下一页
上一页
停止放映
第 27页
个体和总体
? 个体,指单个的相互区别的特定实体 。
人的个体:张三, 李四;学校的个体:
北大, 清华, 西安交大等;
? 总体,泛指某一类个体的集合 。, 人,
泛指张三, 李四等个体组成的集合 。
? 个体和总体的联系是对象的 外部联系 。
下一页
上一页
停止放映
第 28页
总体之间的联系
? 总体的个体之间有着某种联系, 联系方式又
分为三种:
– 一对一联系 实体 A中任一个体至多对应实体 B
中的一个个体, 反之亦然;则称 A和 B是一一对应
的联系 。 例如, 高考录取, 电影院看电影等 。
– 一对多联系 实体 A中至少有一个个体对应于实
体 B中一个以上的个体, 反之亦然, 则称这种联系
是, 一对多, 的联系 。 例如, 父亲对子女;院系
对班级等 。
– 多对多联系 实体 A中至少有一个个体对应于
实体 B中一个以上个体;反之, B中也至少有一个
个体对应于 A中一个以上的个体, 则称 A对 B是多对
多的联系 。 例如, 学生对课程, 工厂对产品等 。
下一页
上一页
停止放映
第 29页
实体模型
? 反映实体间联系的模型成为实体模型 。 分
析, 研究了客观事物及其联系后, 即可建
立实体模型 。 以教学为例:
? 教学由学生, 课程, 教师, 学习, 任课等
实体组成 。
? 学生属性有,学号, 姓名, 性别, 年龄,
班级
? 课程属性有,课程号, 课程名称
? 教师属性有,姓名, 课程号, 课时
? 学习属性有,学号, 课程号, 分数
? 任课属性有,教师名, 课程号, 教室
下一页
上一页
停止放映
第 30页
教学实体模型示意图
课程
学习 任课
教师学生
姓名、课程号、课时
教师名、课程号、教室
学号、姓名、性别、班级
课程号、课程名
学号、课程名、教室
下一页
上一页
停止放映
第 31页
数据模型
? 建立了实体模型后, 就可以建立数据模
型了 。
? 在 DBS中表示实体 ( 数据记录 ) 之间联
系的方式称为 数据模型 。 数据模型实际
上是数据间的一个整体逻辑结构图 。
? 为了使模型能清晰, 准确地反映客观事
物, 要进行数据模型的设计, 也即数据
库的设计 。
下一页
上一页
停止放映
第 32页
数据模型( DB)的设计
– 命名数据模型( 数据库名称 )
以示区别不同的模型,例如:成绩库,MDB
– 命名记录类型 (数据库结构 )
定义数据库记录结构,例如:成绩库记录
学号、课程号、分数
– 命名每个记录中的数据项( 字段 )
XH(学号),CNO(课程号),SCORE(分数)
– 说明各个记录类型之间的联系
– 指出各数据项的数据特征 数据类型、长度、值
域等。例如,XH,字符型,长度为 7
下一页
上一页
停止放映
第 33页
商店的数据关系模型
关系(库名) SHOP
店 名 地 址 经办人 电话
解放路食品店 解放路 262号 李国基 2-5036
桃园商场 桃园路 6号 张山 6-6161
香香瓜果店 北大街 26号 王宏 3-6201
白塔干鲜果店 西大街 56号 宋良 3-3637
北大街果品店 北大街 231号 林青 3-1116
关系框架
或
库结构
元组
或
记录
属性(字段)
属性
“电话”的
值
下一页
上一页
停止放映
第 34页
三种数据模型
? 数据模型的好坏直接影响到 DB的
性能 。 当前较流行的设计方法有
三种:关系, 层次和网络方法;
对应的模型为 关系模型, 层次模
型, 网络模型 。
下一页
上一页
停止放映
第 35页
层次模型
? 描述层次 ( 树形 ) 结构的模型 。
特点:
– 每个模型中只有一个称为根的最高结点
– 其它结点都只能和一个父结点相连接 ( 1,M)
– 查询, 访问都必须从根结点开始
? 最有影响的层次模型的 DBS是 60年代末,
IBM公司推出的 IMS层次模型数据库系统 。
下一页
上一页
停止放映
第 36页
层次模型示意图
校长
校长办公室 各学院 …… 各职能处
( 电信学院 )
计算机系 电子系 信控系 ….,计算机教学实验中心
网络所 ….,软件教研室
下一页
上一页
停止放映
第 37页
网络模型
图结构模型, 其特点:
– 可有 0个或多个结点无双亲
– 允许结点有多个双亲
– 允许结点间有 2种以上的关系
– 存取, 访问必须按事先定义好的路径进
行 ( 从指定出发点 )
最有影响的网络模型是美国数据系统语言
协 会 推 出 的 DBTG 系统, 也称 CODASYL
( Conference On Data System Languige)
下一页
上一页
停止放映
第 38页
网络模型举例
? 例如, 教务管理系统
学生
教学课程表
教室
课程
教师
下一页
上一页
停止放映
第 39页
关系模型
? 其组织形式是一张二维表, 一个表即一个
关系;其特点:
– 一个关系一张表
– 数据独立性高
– 操作简单
– 一行是一个记录
– 一列是一个数据项 ( 字段 )
典型的 RDBMS有,XBASE,VFP,Oracle、
Sybase,DB/2,Informix,Access
下一页
上一页
停止放映
第 40页
关系模型举例
商店关系
店 名 地 址 经办人 电话
解放路食品店 解放路 262号 李国基 2-5036
桃园商场 桃园路 6号 张山 6-6161
香香瓜果店 北大街 26号 王宏 3-6201
白塔干鲜果店 西大街 56号 宋良 3-3637
北大街果品店 北大街 231号 林青 3-1116
下一页
上一页
停止放映
第 41页
数据库的构成
DBS = 数据库 + 用户 + 软件 + 硬件
? 硬件:
指运行 DBS的硬件资源, 例如,
SQL Server要求至少 16MB内存, 32位 CPU、
至少 80MB硬盘空间;
? 软件,指 DBS操作平台, 例如 WINDOWS NT、
DBMS,汉字处理系统等;
? 用户,指终端用户, 应用程序员和数据库管
理员 。
下一页
上一页
停止放映
第 42页
数据库视图
由于观察的角度不同, 数据库中的数据的结构
有三种不同的视图:
– 用户视图 也称用户级 DB;即用户看到并可
操作的那部分数据
– 全局视图 也称概念级 DB;是数据库管理员
看到并可操作的全部数据
– 物理数据存储模式 也称物理级 DB;是 DB中
的各种信息在计算机中的实际分布和存储方
式, 它由操作系统和 DBMS直接管理, 用户不
必了解, 也不可能了解 。
下一页
上一页
停止放映
第 43页
三、计算模式简介
? 计算机应用技术日新月异的发展应归功于计
算技术的发展。计算技术的发展经历了三个
阶段:
? 单主机计算 ( Mainframe Computing)
? 分布式客户机 /服务器计算 ( Distributed
Client/Server Computing)
? 网络计算 ( Network Computing)
下一页
上一页
停止放映
第 44页
(一)单主机计算模式( 1955-1985)
? 以单台主机(功能强大)为中心,以非智
能终端构成的集中式计算环境。
? 特点, 整个系统资源由单用户或多用户共享
(分时技术),用户接口,I/O处理功能都集中在
主机上。
? 缺点, 当处理负载过大时,主机性能就成为制约
通信网络的, 瓶颈, 。
? 解决方法, 提高主机处理速度,增加主机数量。
但成本高、管理复杂。因此限制了单主机模式的
发展。
下一页
上一页
停止放映
第 45页
单主机计算模式的 30年
单主机计算模式经历了 30年的发展史,
按应用方式可划分为三个时代:
– 程序设计时代( 1955-1965)
– 结构化程序设计时代( 1965-1975)
– 软件工程时代( 1975-1985)
下一页
上一页
停止放映
第 46页
1、程序设计时代
? 硬件 早期是单主机,1960年后出现“主机 /哑
终端”结构形式;硬件由,CPU、内外存储器和
外部设备”组成。
? 软件 简单的操作系统、高级语言编译或解释
器,以及少量的库函数和系统支持程序。
? 应用领域 大型科学计算和数据处理
? 处理方式 分前台 /后台处理;前台由系统操作
员在控制台上作即席操作。后台以批处理方式服
务于用户。
? 系统分工 系统操作员和应用程序员;前者负责
操作,后者把高级语言作为虚拟机进行编程(不
管操作)。
下一页
上一页
停止放映
第 47页
程序设计时代(续)
? 编译技术 由于 CPU资源昂贵,高级编程语言
多为编译型;初步形成,编译 — 连接 — 加栽 —
运行,的运作模式。 60年代是编译技术的成熟
期。
? 程序设计 为节省系统资源,程序设计重点是
精选算法,语句精雕细琢,goto语句成了有力
的武器,流程图成了程序设计的指南。由于汇
编语言能够直接处理端口、中断、内存等实时
操作,被认为是程序员应掌握的基本功。对大
型程序采用,自顶向下,分析、求解的方法。
下一页
上一页
停止放映
第 48页
2、结构化程序设计时代
? 1962年美国金星探测器水手 II号卫星失败,
计算机界引起巨大震动。如何保证软件安
全、可靠?
? 由此引发了一场关于,GOTO” 语句的争战。
– 从理论上无法证明“带 GOTO的程序是正确
的”;
– 程序测试只能证明,程序有错,,而不能证
明,程序无错,;
– 从理论上可以证明“只用三大基本程序结构
(顺序、分支、循环)就可以实现任何算法”;
– 最后论战的结论“限制、最终取消 GOTO语
句”。
? 结构化程序设计方法
? 数据库技术
下一页
上一页
停止放映
第 49页
结构化程序设计方法
? 定义一 (北京大学 王选院士)
– 没有 GOTO 语句
– 一个入口一个出口
– 自顶向下、逐步求精的分解
– 主程序员组
? 定义二 (清华大学 潭浩强教授)
– 自顶向下
– 逐步求精
– 模块化设计
– 结构化编码
下一页
上一页
停止放映
第 50页
结构化程序设计方法的特点
? 程序结构规范化
– 便于编程、调试、阅读
? 大化小,难化简,提高编程效率
– 符合人们解决问题的习惯
– 便于自顶向下地求解
? 便于集团协同作业
– 模块化适合并行开发方式
? 扩大了求解问题的规模
– 70年代,程序最大已达 385万句(美国国防
部导弹预警系统 )
下一页
上一页
停止放映
第 51页
数据库技术
? 数据文件的形式不适合管理海量数据
– 随着解题规模的扩大,处理的数据量急剧增加
– 用文件保存数据“难维护、难检索、难共享”的问题日益突出
– 从 60年代中期开始研究数据库系统 DBS
? 数据库系统 DBS是专门处理和维护数据的软件系统
– 具有数据定义、操纵的语言
– 提供统一的 SQL结构查询语言
? 数据库的成功被认为是 70年代计算机界的一大成就
– 从此信息处理走上正轨
? 关系型数据库
– 数据元素之间存在一一对应关系(以二维表形式表示)的数据
模型。因系统简单而被广泛采用。例如,FoxPRO,SQL
Server, ORACLE等关系型数据库系统。
下一页
上一页
停止放映
第 52页
3、软件工程时代
? 随着社会对软件需求的日益增长,软件的规模
也越来越大(例如,美国 1979年的哥伦比亚航
天飞机系统 4000万条指令),这与软件的生产
方式落后、生产效率低形成尖锐的矛盾,由次
产生,软件危机,。
? 为研究、解决软件危机,诞生了,软件工程
学,。人们开始研究软件生产内部的规律,找
出,软件生存周期,,用工程化的原理,科学
地组织软件的生产,在一定程度上提高了软件
的生产效率。
? 软件生产开始步入软件工程时代。
下一页
上一页
停止放映
第 53页
软件危机主要体现在,
? 软件开发工程进度难以预测
– 工期一再拖延,降低了开发组织的信誉
? 软件开发成本难以控制
– 投入一再追加,令人难以置信
? 软件系统中的错误难以消除,质量无法保证
– 绝对没错的软件不存在
? 产品难以维护
– 软件产品本质上是代码化的人的思维活动,他人难以
替代
? 典型的例子 IBM公司开发 OS/360系统,投入
5000人年,耗资数亿美元,结果还是延期交付,
使用后系统中仍发现大量错误。
下一页
上一页
停止放映
第 54页
软件工程学
? 软件工程学是把软件开发作为工程对象来研究,从
技术措施和组织管理两个方面研究、解决软件危机
的学科。软件工程方法论是开发软件的指导方法和
必修课。进 30年来,软件工程学已发展成一定的体
系结构。
软件工程学
软件开发技术
软件工程管理
软件开发方法学
软件工具
软件工程环境
软件管理学
软件经济学
下一页
上一页
停止放映
第 55页
传统程序设计方法的缺点
传统的程序设计方法虽然缓解了软件危机,
但并不能完全消除软件危机,传统方法本
身存在不可克服的问题。表现在:
? 生产率提高的幅度远不能满足需要
? 软件重用程度很低
? 软件难以维护
? 软件不能真正满足用户的需要
– 据统计,在美国开发的软件系统中,真正符合
用户要求并顺利投入使用的系统只占 1/4,夭折
的系统占 1/4,近 1/2的系统,虽完成了开发过
程,但并未被用户采用或未被长期使用。
下一页
上一页
停止放映
第 56页
面向对象程序设计技术
? 现实世界的问题空间和软件的解空间之间
存在很大的距离。业界人士从未中断过缩
小这个距离的努力。 面向对象 ( OO-
Object Oriented)方法是这种努力的一大
成果。
? OO方法围绕现实世界的概念来组织模型,
是一种全新的思考问题的方法。
? OO方法将客观世界看成是由许多不同种类
的对象构成的。每个对象都有自己的内部
状态和运动规律。不同对象之间的相互联
系和相互作用就构成了完整的客观世界。
下一页
上一页
停止放映
第 57页
OO方法的要点
( 1)客观世界由各种对象组成。 OO的软件系统也是由
对象组成的。任何复杂的软件都是由简单的对象组合
而成的;
( 2)所有对象都可划分为不同的对象类。每个对象类
都有自己特定的数据和方法;
( 3)对象类具有层次结构;上层的类称为“父类”或
“基类”,下层的类称为“子类”或“派生类”。子
类可以继承父类的特性及操操作;
( 4)对象之间通过传递消息互相联系(消息机制)。
OO方法 = 对象 + 对象类 + 继承性 + 消息机制
下一页
上一页
停止放映
第 58页
(二)分布式客户机 /服务器计算模式
( 80年代 — 至今)
? 微机应用
由于大规模集成电路技术的发展,微处理器
诞生。 80年代初,PC机进入市场,由此开
始了微机应用新时代。
? 特点
– 微机功能强大、性能价格比占优,市场占有率高
– 各种 PC机版本的语言编译器应有尽有
– 大众化数据库( Dbase,FoxPRO等)问世
– 形成 PC机应用软件的巨大市场
下一页
上一页
停止放映
第 59页
网络应用
由于单机资源有限,应市场需求,70年代中期出现
了一批局域网 LAN(例如,3+网、以太网,Novell
网等)。经过 10年发展,局域网技术日趋完善,进
入网络( LAN)时代。
? 特点
– 采用网络 /文件服务器模式;共享数据存放在文件服务器,
网上其它 PC机通过网卡、以双绞线或同轴电缆联接,形成
局域网 LAN;适合一般企、事业单位的信息管理。
– LAN是分布式技术的应用(网上 PC机独立运行),借助网
络实现异地资源共享。
? 缺点
– 由于网上所有 PC机需求的数据都在网中传输,当网上用户
增加,网间存取频繁时,网上冲突增加,甚至造成系统瘫
痪。
下一页
上一页
停止放映
第 60页
客户机 /服务器应用
? 随网络技术日益完善,1985年 C/S计算模式问世,
使得资源共享进一步深化,有效地解决了文件服
务器不能充分共享资源的问题。
? 特点
– Pentium CPU问世,出现了功能更强大、适合
图形处理和网络通信的工作站。硬件结构仍是
主 -从式。
– C/S技术可以说是一种软件机制。它将程序分为
客户端和服务器端两种类型;系统工作方式是
“请求 —响应 —处理 —返还”。
? 主 --从式和 C/S方式的区别
– 主 --从式传输所有的数据和文件(传输量大)
– C/S方式只传输请求和结果(传输量小)
下一页
上一页
停止放映
第 61页
客户机 /服务器方式的优、缺点
? 优点
– 减少了网络的流量和冲突的机率
– 响应快、处理效率高
– 真正体现了分布式处理环境、充分发
挥了各地系统资源的作用
– 在网上可以支持更多数量的用户
? 缺点
– 计算(处理)对于通信的依赖越来越
大。因此,通信效率直接影响 C/S方
式的效率。
下一页
上一页
停止放映
第 62页
(三)网络计算模式( 90年代起)
随着网络效率显著,网越联越大,开始出现广域
网 WAN。国际互联网 Internet标志着网络时代到
来。
? 特点
– 以 WWW( World Wide Web环球网)、主页文档标准化
( HTML)和 Java语言三大技术成熟为标志
– NC计算机问世,它带有各种多媒体的接口、高速 CPU、
大容量内存、高级显示器等
– 软件服务众多 WWW,FTP,Telnet,E-mail,BBS等
– 网上每个用户权力均等
– 网上信息资源取之不尽用之不竭。
下一页
上一页
停止放映
第 63页
作业、思考题
1,第 6章思考题:
1,2,3,4,5、
2,作业,
15
下一页
上一页
停止放映
第 64页
结束语
? 欢迎参加到中心网站, 软件基础, 课程的学习
讨论中来。
? 中心网址:
http,//ctec.xjtu.edu.cn
? 课件下载地址,
ftp,//ctec.xjtu.edu.cn
? 我的 E-mail地址,
LZQ_2668634@263.net
谢谢,再见!