第六章 编码
? 程序设计语言
? 程序设计途径
程序设计语言
? 6.1.1 程序设计语言分类
? 6.1.2 程序设计语言的特点
? 6.1.3 选择一种语言
程序设计语言
? 程序设计语言分类
? 按应用特点
? 基础语言
? BASIC FORTRAN COBOL ALGOL
? 结构化语言
? Ada C PASCAL
? 专用语言
? APL PORTH LISP/PROLOG
程序设计语言
? 程序设计语言分类
? 按语言内在特点
? 系统实现语言
? C
? 静态高级语言
? COBOL FORTRAN
? 块结构高级语言
? ALGOL PASCAL
? 动态高级语言
? 非通用语言
程序设计语言
? 程序设计语言的特点
? 名字说明
? 类型说明
? 初始化
? 程序对象的局部性
? 程序模块
? 循环控制结构
? 分支控制结构
? 异常处理
? 独立编译
程序设计语言
? 选择一种语言
? 高级语言 优于 汇编语言 (除特殊情况下)
? 实用标准
? 系统用户的要求
? 可以使用的编译程序
? 可以得到的软件工具
? 工程规模
? 程序员的知识
? 软件可移植性要求
? 软件的应用领域
程序设计途径
? 6.2.1 写程序的风格
? 6.2.2 程序设计方法论
? 6.2.3 程序设计自动化
? 6.2.4 程序设计工具
程序设计途径
? 写程序的风格
? 遵循规则
? 程序内部的文档 (标识符、注解、视觉效果等)
? 数据说明
? 语句构造 (简单而简洁)
? 输入 /输出
? 效率 (程序运行时间、存储器效率、输入 /输出效率)
程序设计途径
? 程序设计方法论
? 自顶向下
? 由最高层次到最低层次
? 自底向上
? 从底层构造系统到最终
实现最高层次的设计
? 程序设计自动化
? 三种不同的途径 p121
程序设计途径
? 程序设计自动化
程序设计途径
? 程序设计工具
? 编译程序 (开发编译程序、优化编译程序)
? 代码管理系统 ( MAKE SCCS)
? 程序设计语言
? 程序设计途径
程序设计语言
? 6.1.1 程序设计语言分类
? 6.1.2 程序设计语言的特点
? 6.1.3 选择一种语言
程序设计语言
? 程序设计语言分类
? 按应用特点
? 基础语言
? BASIC FORTRAN COBOL ALGOL
? 结构化语言
? Ada C PASCAL
? 专用语言
? APL PORTH LISP/PROLOG
程序设计语言
? 程序设计语言分类
? 按语言内在特点
? 系统实现语言
? C
? 静态高级语言
? COBOL FORTRAN
? 块结构高级语言
? ALGOL PASCAL
? 动态高级语言
? 非通用语言
程序设计语言
? 程序设计语言的特点
? 名字说明
? 类型说明
? 初始化
? 程序对象的局部性
? 程序模块
? 循环控制结构
? 分支控制结构
? 异常处理
? 独立编译
程序设计语言
? 选择一种语言
? 高级语言 优于 汇编语言 (除特殊情况下)
? 实用标准
? 系统用户的要求
? 可以使用的编译程序
? 可以得到的软件工具
? 工程规模
? 程序员的知识
? 软件可移植性要求
? 软件的应用领域
程序设计途径
? 6.2.1 写程序的风格
? 6.2.2 程序设计方法论
? 6.2.3 程序设计自动化
? 6.2.4 程序设计工具
程序设计途径
? 写程序的风格
? 遵循规则
? 程序内部的文档 (标识符、注解、视觉效果等)
? 数据说明
? 语句构造 (简单而简洁)
? 输入 /输出
? 效率 (程序运行时间、存储器效率、输入 /输出效率)
程序设计途径
? 程序设计方法论
? 自顶向下
? 由最高层次到最低层次
? 自底向上
? 从底层构造系统到最终
实现最高层次的设计
? 程序设计自动化
? 三种不同的途径 p121
程序设计途径
? 程序设计自动化
程序设计途径
? 程序设计工具
? 编译程序 (开发编译程序、优化编译程序)
? 代码管理系统 ( MAKE SCCS)