第一章预备知识
1.1 学习程序设计语言原理的原因
1.2 程序设计语言的应用领域
1.3 语言评估标准
1.4 影响语言设计的因素
1.5 语言的分类
1.6 语言设计的权衡
1.7 实现方法
1.8 程序设计的环境
在我们开始讨论程序设计语言的原理之前,我们必须考虑一些预备知识,首先我们解释一下,计算机科学系学生和专业的软件开发者应该学生语言设计与评估的通用方法的一些原因。然后我们简明地描述主要的程序设计领域。
机器架构和程序设计方法学。
学习程序设计语言原理的原因
1增强表达思想的能力
2提升了选择合适的语言的依据
3增强学习新语言的能力
4更好的理解实现的重要性
5更好的使用原有的语言
6计算的整体提升
程序设计语言的应用领域
1科学计算领域
2商业领域
3人工智能
4网络软件
语言评估标准
可读性
可写性
可靠性
总成本
影响语言设计的因素
1简单性
2正交性
3数据类型
4语法设计
5对抽象的支持
6表达性
7类型检查
8异常处理
9受限的别名
机器架构和程序设计方法学。
语言的分类
过程式语言
函数式语言
逻辑语言
面向对象语言
语言设计的权衡
可靠性与执行成本有冲突
Java更重视可靠性
C选择了执行成本更优先
可读性与可写性的冲突
APL优先保证可写性
可写性与可靠性的冲突
c++更看重可写性。
实现方法
编译
C,C十十,C0B0L等是编译型语言
解释
javascript,python,PHP等是解释型语言
混合
Java,PerI,.NET等混合型语言,先编译成中间态的字节码,再解释执行
预处理器
C语言使用了宏预处理
程序设计的环境
早期的开发工具是松散的工具集合,包括编辑器,编译器,连接器,汇编器,调试器等
九十年代后出现了集成开发环境,以JBuilder,visual studio,netbeans等为代表