第7章 软件技术基础.pdf
《第7章 软件技术基础.pdf》由会员分享,可在线阅读,更多相关《第7章 软件技术基础.pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第 7 7 章章 软件技术基础软件技术基础主要内容主要内容:本章主要介绍计算机软件实现的相关基础知识,包括程序设计与程序设计的基本过程、程序设计语言、数据结构与算法、软件工程、 软件开发方法 、应用系统开发过程和方法等。学习目标学习目标:1.了解计算机程序设计的基本概念,程序设计语言的发展。2.了解数据结构和算法在程序设计中的作用。3 了解软件工程的定义、主要内容和过程。4.了解软件开发常用的方法和技术。5.掌握开发一个应用系统的主要步骤。7.17.1 程序设计基础程序设计基础在计算机科学领域,计算机软件扮演着十分重要的角色, 那么,计算机软件是由什么构成?它又是如何产生的呢?最通俗的说法就
2、是计算机软件是由计算机程序构成的, 是由计算机程序员设计产生的。那么什么是计算机程序,它由什么组成?在这里,首先介绍计算机程序设计的相关基础知识。7.1.17.1.1 计算机程序设计计算机程序设计计算机作为一种电子设备, 一旦被制造出来,它的硬件结构也就确定了, 而计算机要能够充分发挥作用是离不开计算机软件的。 对于一台计算机, 需要它实现何种功能就要给它安装相应的软件,否则它的功能就无法发挥出来。 比如用户需要用计算机进行文档处理, 那么就需要安装 Office 或 WPS 等相应的文档处理软件;假如用户需要进行多媒体创作就需要在计算机上安装 Flash、Authorware 或 Direc
3、tor 等相应的多媒体处理软件。提到计算机软件自然要涉及到程序的概念, 所有的软件都是程序员通过编写程序代码实现的。计算机作为一种电子设备, 它所能实现的功能都是人类赋予它的, 要使计算机完成一项任务就必须要告诉计算机完成这项任务的工作步骤, 人类就是通过计算机程序来完成这一工作的。 可以说计算机程序是人和计算机之间的媒介, 它传递着人和计算机之间的交流信息。从直观上来看, 计算机程序就是使用一种计算机能够懂得的语言编写的一组指令序列。 创作计算机程序的过程就叫做计算机程序设计。7.1.27.1.2 程序设计语言程序设计语言计算机程序实现人和计算机之间的信息交流, 而实现这一交流的基础工具就是
4、计算机程序设计语言。 计算机程序设计语言是人们为描述计算过程而设计的一种具有语法语义描述的记号。为了实现人与计算机之间的通信,人们设计出了各种词汇较少、语法简单、意义明确并适合于计算机的程序设计语言。 对于计算机工作人员而言, 程序设计语言是除计算机本身之外的所有工具中最重要的工具,是其他所有工具的基础。从计算机诞生至今,随着计算机应用范围和规模的发展,程序设计语言不断升级换代,大体上经历了五代:1 1第一代是机器语言第一代是机器语言机器语言是一种 CPU 指令系统,是该 CPU 可以识别的一组由 0 和 1 序列组成的指令码。用机器语言编写程序,就是从所使用的CPU 指令系统中挑选合适的指令
5、,组成一个机器可以直接理解、执行的指令序列。例如某CPU 指令系统中的两条指令:10000000加10010000减通过示例可以看出,这种 0、1 码序列组成程序序列太长,不直观,而且难记、难认、难理解,不易查错,因而只有专业人员才能掌握,程序生产效率很低,质量也难以保证。这种繁重的手工方式与高速、自动工作的计算机不相称,大大限制了计算机的推广使用。2 2第二代是汇编语言第二代是汇编语言为了减轻人们在编程中的劳动强度,克服机器语言的缺点,50 年代中期人们开始使用一些“助记符号”来代替0、1 码编程。如上例所示的两条机器指令, 用汇编语言可以写成:A+BA或ADD A,BA-BA或SUB A,
6、B这种用助记符号描述的指令系统称为第二代计算机程序设计语言, 也称汇编语言。 汇编语言也是一种面向机器的程序设计语言,它用助记符号来表示机器指令的操作符与操作数,汇编指令与机器指令之间的关系是一对一的关系, 但是, 汇编语言指令不能被计算机直接识别、理解和执行,需要经过一个特定的翻译程序(即汇编程序)将其中的各个指令逐个翻译成相应的机器指令后才能执行。用汇编语言编程,程序的生产效率及质量都有所提高。汇编语言与机器语言都是随CPU不同而异,都是一种面向机器语言。程序员用它们编程时,不仅要考虑解题思路, 还要熟悉机器内部结构,编程强度仍很大,影响计算机的普及与推广。3 3第三代是高级程序设计语言第
7、三代是高级程序设计语言为了克服汇编语言和机器语言的缺点,在50 年代初期,人们开始研制另一种计算机程序设计语言-面向过程的语言, 人们可用日常熟悉的, 接近自然语言和数学语言的方式对操作过程进行描述, 这种语言称为第三代计算机程序设计语言, 即高级程序设计语言或面向过程语言。用高级语言编程时,人们不必熟悉计算机内部具体构造和熟记机器指令, 而把主要精力放在算法描述上面,所以又称算法语言。例如,求一个表达式的值, 可在高级语言程序中直接写出如下语句:X=(A+B)/(A-B)而不需要写出大量的助记符号。第三代程序设计语言主要应用于事务应用、 数字计算、通用应用和专用应用等领域。 最具代表性的有
8、ALGOL、FORTRAN、COBOL、BASIC、PASCAL 等。4 4第四代是非过程化程序设计语言第四代是非过程化程序设计语言第四代程序设计语言的出现是由于商业需要。第四代程序设计语言这个词最早是在 80年代初期出现在软件厂商的广告和产品介绍中。 因此, 这些厂商的第四代程序设计语言产品不论从形式上还是从功能上, 差别都很大。但是,人们很快发现这一类语言由于具有“面向问题”、 “非过程化程度高等特点, 可以成数量级地提高软件生产率, 缩短软件开发周期,因此赢得了很多用户。第四代程序设计语言以数据库管理系统所提供的功能为核心、 进一步构造了开发高层次软件系统的开发环境,如报表生成、 多窗口
9、表格设计、菜单生成系统、 图形图像处理系统和决策支持系统,为用户提供了一个良好的应用环境。它提供了功能强大的非过程问题手段,用户只需要告知系统做什么,而无须说明怎么做, 因此可以大大提高软件生产率。例如,数据库中的结构化查询语言SQL 就是属于第四代程序设计语言。当用户需要检索一批数据时,只需要通过 SQL 语言指定查询的范围、 内容和查询的条件, 系统就会自动形成具体的查找过程,并一步一步地去执行查找,最后获取查询结果。比如:查询 StudentInfo 表中,成绩不及格的同学的学号、姓名和成绩:SELECT Num,Name,ScoreFROM StudentInfoWhere Score
10、605 5第五代是智能性语言第五代是智能性语言第五代语言除具有第四代语言的基本特征外, 还具备许多新的功能, 特别是具有一定的智能。主要应用于商品化人工智能系统、 专家系统和面向对象数据库管理系统等领域。 最具代表性的有 LISP、PROLOG、GEMSTONE 等。目前, 计算机的应用已经深入到了各行各业, 与此同时也出现了各种各样的为数众多的计算机程序设计语言。据统计, 目前已有数千种程序设计语言。在这些程序设计语言中,只有很小部分得到比较广泛的应用。 下面是一些在教学、 科研和开发中常用程序设计语言的简介:(1)BASIC 语言BASIC(Beginner All-Purpose Sym
11、bolic lnstruction Code)是由美国 Dartmouth 大学JohnKemeny 和 Thomas Kurt 开发的高级语言。它允许有较多的人机对话,简单易学,便于修改和调试,具有简单的语法形式和有限的数据结构与控制结构, 现在仍被广泛使用。它的流行得益于它的简单性、 实现的方便性与高效率。 它不仅用于各种科学计算, 而且广泛应用于各种数据处理, 还可用作教学工具。 目前有各种不同的版本。 例如, GWBASIC、 TURBO BASIC、TRUE BASIC 和 VISUAL BASIC 等。(2)Pascal 语言Pascal 语言是 70 年代初由瑞士联邦大学的 NW
12、irth 教授创建的程序设计语言,为了纪念法国数学家 Pascal 而命名。Pascal 语言不仅用作教学语言,而且也用作系统程序设计语言和某些应用。 所谓系统程序设计语言, 就是用这种语言可以编写系统软件。 如操作系统、编译程序等。Pascal 语言是一种安全可靠的语言,有强数据类型。语法满足自顶向下设计和结构程序设计。Pascal 语言吸收了 ALGOL 语言中许多有益成分,使得Pascal 语言的数据抽象进入一个新的层次。(3)C 语言C 语言是在 70 年代初期由美国 Bell 实验室 Rithie 和 Thompson 在原 BCPL 语言基础上发展起来,用于编写UNIX 操作系统,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 软件技术基础 软件技术 基础
限制150内