文档介绍:第1章历史回顾与语言分类
PL简史
三个计算时代
语言分类
重要语言18种
1
PL简史
50年代高级语言出现
60年代奠基性研究
70年代完善的软件工程工具
80年代面向对象发展
90年代多范型、持久化、多媒体、平台无关
2
数学表示法
单元记录设施
符号名称
1950
数据规格说明
结构化控制
COBOL(1958)
1960
非算法规格说明
交互使用
结构化数据
面向对象编程
1970
并发
数据抽象
1980
1985
符号汇编( 1950年代中期)
FORTRAN(1956)
ALGOL-58
APL (1962)
ALGOL-60
MAD(1959)
RPG(1964)
BASIC(1964)
CPL(1963)
ALGOL-68
BCPL
(1967)
PL/1 (1966)
Simula (1967)
Pascal(1973)
B(1970)
C (1972)
并发Pascal
(1975)
Modula
CLU(1977)
Smalltalk
Ada(1982)
True BASIC(1980s)
C++
1995
Ada(95)
多范式型
java
1996
平台无关
3
程序语言的计算背景
55 ~ 85 单主机计算
85 ~ 95 C/S计算
96 ~ 网络计算
4
30年大致可分为以下三个时代。
1 单主机计算
程序设计时代
结构化程序设计时代
软件工程时代
5
程序设计时代
55-65头十年是单主机计算形成期。此时的硬件是CPU、内、外存储器、各种外设。软件的操作系统成熟、并有少量的库函数和系统支持程序。应用方式是编程计算。应用领域是大型科学计算和大量数据处理。
编译理论、技术成熟、大量高级语言涌现。
数据结构算法、可计算理论完善。
高级程序设计语言的出现实现了系统程序员和应用程序员的第一次分工。
计算机是科学家的工具,开始人工智能研究。
6
结构化程序设计时代
65-75年是结构化程序设计时代。结构化程序设计使程序开发的速度、开发出程序的规模都有大幅度提高。
结构化设计天然支持自顶向下逐步细化设计方法。
计算机的商业应用奠定了计算机工业的基石。
60年代中期开始了数据库管理系统的研究。数据库的成功被认为是计算机界70年代一大成就。
计算机是各种专业人员的工具。
7
软件工程时代
75-85年,是软件工程时代。软件工程实则是将系统工程用于计算机软件。软件也是工业产品。
为设计制造这个产品要定出规程、规范和标准。有了规范和标准就可以作出设计、制造、管理的工具和验证测试工具。工程活动必然涉及人力组织,进度、调配,投资和效益。
文档开发也成为软件开发的一部分,所以:
软件=程序+文档
计算机系统自成产业
8
应用开发者又一次分工:程序员(按设计编码测试),高级程序员(按规格说明做设计),系统分析员(按用户需要写需求规格说明书)。
软件开发有了工程规范。人们自然想到利用软件工具使本阶段工作做得更快更好。于是,大量涌现计算机辅助软件工程(CASE)工具。
软件工程使软件制作从手工业进入现代化大生产,软件规模和开发效率随之大增。1974年出现了4000万句规模的软件(美国航天飞机系统)。
70年代终端普及。要求在统一工作界面上操纵所有的工具。数据,出现了系统集成的概念。
续
9
面向对象技术
1980年出现了Smalltalk系统为代表的面向对象技术。
结构化程序=数据结构+数据
面向对象程序=对象+消息
算法
数据
10