Day1-2019.5.12
Lesson 1绪论
1.1导学
·计算机语言即是程序员与计算机沟通的语言
·计算机语言的级别:
(1)二进制代码构成的极其语言
(2)使用助记符的汇编语言
(3)使用类似英语单词和语句的高级语言
·C++是面向对象的高级语言,将客观的现实事物看做对象,将同类的对象抽象形成类,类封装细节只对位暴露接口。
·C++支持的程序设计方法:
- 面向过程的程序设计方法
- 面向对象的程序设计方法
- 泛型程序设计方法
·多动手亲自写程序,大量的训练
·C++程序的开发过程:
- 算法设计
- 源程序编辑
- 编译
- 连接:大型的程序需要很多部分配合
- 运行调试
·信息在计算机中如何存储和表示的,逻辑数据和字符数据也用二进制表示
1.2计算机系统
·计算机指令系统:
- 机器硬件能够识别的语言(机器语言)的集合
- 它是软件和硬件的主要界面
·软件=程序+文档,没有文档,升级和维护都会有问题
·计算机程序:指令的序列,描述解决问题的方法和数据
1.3计算机语言和程序设计方法的发展
·汇编语言:
(1)将机器指令映射为一些助记符。如ADD、SUB、mov、等;
(2)抽象层次低,需要考虑机器细节。
·高级语言:
- 关键字,语句容易理解
- 有含义的数据命名和算法
- 抽象层次较高
- 屏蔽了机器的细节
·支持面向象的观点和方法:
- 将客观的实物看做对象,对象具有各种属性
- 对象间通过消息传送进行沟通
- 支持分类和抽象
·面向过程的程序设计方法
- 设计求解问题的过程
- 严格按按照步骤顺序执行
·面向对象的程序设计方法
- 由面向对象的高级语言支持
- 一个系统由对象构成
- 对象与对象之间的的信息交互
·泛程序设计方法
1.4面向对象的基本概念
·对象:
- 一般意义上的对象,是现实世界中一个实际存在的事物
- 面向对象方法中的对象:是系统中用来描述客观事物的一个实体
·抽象和分类:
- 分类的依据:抽象
- 抽象出同一类对象的共同属性和行为,形成类
- 类与对象的关系:类型与实例的关系,犹如模具与铸件的关系
·封装:
- 隐蔽对象的内部细节
- 对外形成一个边界
- 只保留有限的对外接口
- 使用方便,安全性好
·继承:
- 意义在于软件复用
- 改造,拓展已有类型形成类
·多态:同样的消息作用在不同对象上有可能引起不同的行为
1.5程序的开发过程
·可执行程序:连接目标程序及库中的某些文件,生成的一个可执行文件,例如windows平台上的.exe文件
·翻译程序:
- 汇编程序:将汇编语言源程序翻译成目标程序
- 编译程序:将高级语言源程序翻译成目标程序
- 解释程序:将高级语言源程序翻译成机器指令,边翻译边执行
·C++程序的开发过程:
- 算法与数据结构设计
- 源程序编辑
- 编译
- 连接,生成可执行程序
- 测试
- 调试
1.6计算机中的信息与存储单位
·计算机基本功能:
- 算数运算(2)逻辑运算
·计算机内部信息:
- 控制信息:指挥计算机操作
- 数据信息:计算机程序加工的对象
- 数值信息:定点数和浮点数
- 非数值信息:字符数据和逻辑数据