程序设计语言概念(第9版) PDF扫描版[52MB] PDF 免费下载

程序设计语言概念(第9版) 从为什么学习程序设计语言人手,深入细致地讲解了命令式语言的主要结构及其设计与实现,内容涉及变量、数据类型、表达式和赋值语句、控制语句、子程序、数据抽象机制、支持面向对象程序设计(继承和动态方法绑定)、并发和异常处理等方面。最后两章介绍了函数式程序设计语言和逻辑程序设计语言。

程序设计语言概念(第9版) 内容丰富,剖析透彻,被美国和加拿大多所高等院校采用作为教材。本书既可用做高等院校计算机及相关专业本科生程序设计语言课程的教材和参考书,也可供程序设计人员参考。

程序设计语言概念(第9版) 目录:

第1章 预备知识
1.1 学习程序设计语言原理的原因
1.2 程序设计领域
1.3 语言评价标准
1.4 影响语言设计的因素
1.5 程序设计语言的分类
1.6 语言设计中的权衡
1.7 实现方法
1.8 编程环境
小结
复习题
习题
第2章 主要程序设计语言的发展
2.1 Zuse的Plankalkal语言
2.2 最少硬件的程序设计:伪代码
2.3 IBM 704计算机与Fortran语言
2.4 函数式程序设计:LISP语言
2.5 迈向成熟的第一步:ALGOL 60
2.6 商务记录计算机化:COBOL语言
2.7 分时处理的开始:BASIC语言
2.8 满足所有人的需要:PL/1
2.9 两种早期的动态语言:APL和SNOBOL
2.10 数据抽象的开始:SIMULA67
2.11 正交设计:ALGOL68
2.12 ALGOL系列语言的早期后代语言
2.13 基于逻辑的程序设计:Prolog语言
2.14 历史上规模最大的设计工作:Ada语言
2.15 面向对象的程序设计:Smalltalk
2.16 结合命令式和面向对象的特性:C++
2.17 基于命令式的面向对象语言:Java
2.18 脚本语言
2.19 一种新千年的基于C的语言:C#
2.20 标记与程序设计混合的语言
小结
文献注释
复习题
习题
程序设计练习
访谈:用户设计与语言设计
第3章 描述语法和语义
3.1 概述
3.2 描述语法的普遍问题
3.3 描述语法的形式化方法
3.4 属性文法
3.5 描述程序的意义:动态语义
小结
文献注释
复习题
习题
第4章 词法分析和语法分析
4.1 概述
4.2 词法分析
4.3 语法分析问题
4.4 递归下降的语法分析
4.5 自底向上的语法分析
小结
复习题
习题
程序设计练习
第5章 名字、绑定和作用域
5.1 引言
5.2 名字
5.3 变量
5.4 绑定的概念
5.5 作用域
5.6 作用域和生存期
5.7 引用环境
5.8 命名常量
小结
复习题
问题集
编程题
访谈:脚本语言以及其他灵活
解决方案的例子
第6章 数据类型
6.1 引言
6.2 基本数据类型
6.3 字符串类型
6.4 用户定义的序数类型
6.5 数组类型
6.6 关联数组
6.7 记录类型
6.8 联合类型
6.9 指针和引用类型
6.10 类型检查
6.11 强类型化
6.12 类型等价
6.13 论和数据类型
小结
参考文献注释
复习题
问题集
编程题
访谈:Lua
第7章 表达式与赋值语句
7.1 引言
7.2 算术表达式
7.3 运算符重载
7.4 类型转换
7.5 关系表达式和逻辑表达式
7.6 短路求值
7.7 赋值语句
7.8 混合模式赋值
小结
复习题
问题集
编程题
第8.章 语句级控制结构
8.1 引言
8.2 选择语句
8.3 迭代语句
8.4 无条件分支
8.5 防护命令(Guarded Commands)
8.6 结论
小结
复习题
问题集
编程题
访谈:第一部分:语言学的研究和脚本语言Peril的诞生
第9章 子程序
9.1 引言
9.2 子程序基本原理
9.3 子程序的设计问题
9.4 局部引用环境
9.5 参数传递方式
9.6 子程序作为参数
9.7 重载子程序
9.8 泛型子程序
9.9 函数的设计问题
9.10 用户定义重载运算符
9.11 协同程序
小结
复习题
问题集
编程题
访谈:第二部分:一般的脚本语言和特殊的Peri语言
第10章 实现子程序
10.1 调用和返回的一般语义
10.2 实现“简单”的子程序
10.3 通过栈动态局部变量实现子程序
10.4 嵌套子程序
10.5 块
10.6 动态作用域的实现
小结
复习题
问题集
编程题
访谈:保持尽量简单
第11章 抽象数据类型与封装结构
11.1 抽象的概念
11.2 数据抽象的介绍
11.3 抽象数据类型的设计要点
11.4 语言示例
11.5 参数化的抽象数据类型
11.6 封装结构
11.7 命名封装
小结
复习题
问题集
编程题
附录1
访谈:C++:它的诞生,它的无处不在和它受到的常见质疑
第12章 面向对象程序设计的支持
12.1 概述
12.2 面向对象程序设计
12.3 面向对象语言的设计问题
12.4 Smalltalk对面向对象程序设计支持
12.5 C++对面向对象程序设计的支持
12.6 Java中对面向对象程序设计的支持
12.7 C#中对面向对象程序设的支持
12.8 Ada 95对面向对象程序设计的支持
12.9 Ruby对面向对象程序设计的支持
12.10 面向对象构造的实现
小结
复习题
问题集
编程题
访谈:关于程序设计范型和更好的程序设计
第13章 描述语法和语义
13.1 概述
13.2 子程序级并发的介绍
13.3 信号量
13.4 管程
13.5 消息传递
13.6 Ada对并发的支持
13.7 Java线程
13.8 C#线程
13.9 语句级并发
小结
文献注释
复习题
习题
程序设计练习
第14章 异常处理和事件处理
14.1 异常处理概述
14.2 Ada中的异常处理
14.3 C++中的异常处理
14.4 Java中的异常处理
14.5 事件处理概述
14.6 Java的事件处理
小结
文献注释
复习题
习题
程序设计练习
访谈:Java的诞生
第15章 函数式程序设计语言
15.1 概述
15.2 数学函数
15.3 函数式程序设计语言基础
15.4 第一种函数式程序设计语言:LISP
15.5 Scheme概述
15.6 COMMON LISP
15.7 ML
15.8 Haskell
15.9 函数式语言的应用
15.10 函数式语言和命令式语言的比较
小结
文献注释
复习题
习题
程序设计练习
第16章 逻辑程序设计语言
16.1 概述
16.2 谓词演算简介
16.3 谓词演算与定理证明
16.4 逻辑程序设计概述
16.5 Prolog的起源
16.6 Prolog的基本元素
16.7 Prolog的缺陷
16.8 逻辑程序设计的应用
小结
文献注释
复习题
习题
程序设计练习
参考文献

截图:


发表回复