爱你雅课-秒拍app : 爱你雅课

清华大学视频课件:面向对象程序设计(C++)

课程简介

C++是从C语言发展演变而来的一种面向对象的程序设计语言。面向对象的程序设计方法将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象。对同类型对象抽象出其共性,形成类。类通过外部接口,与外界发生关系,对象与对象之间通过消息进行通讯。这样,程序模块间的关系简单,程序模块的独立性、数据的安全性具有良好的保障,通过继承与多态性,使程序具有很高的可重用性,使得软件的开发和维护都更为方便。

由于面向对象方法的突出优点,目前它已经成为开发大型软件时所采用的主要方法。而C++语言是应用最广泛的面向对象的程序设计语言之一。

本课程是一门面向广大初学者的入门课程,自1999年开始在清华大学开设,本课程的教材已经在清华大学等一百多所学校的不同专业中使用,取得了良好的教学效果。

本课程将C++语言作为大学生的计算机编程入门语言,不仅详细介绍语言本身,而且介绍常用的数据结构和算法、面向对象的设计思想和编程方法。课程以面向对象的程序设计方法贯穿始终,每一章都是首先阐述面向对象的程序设计思想和方法,由实际问题入手,然后引出必要的语法知识,在讲解语法时着重从程序设计方法学的角度讲述其意义和用途。

本课程是清华校内同名课程的完整版,内容全面,难度适中,包括了ISO第三版C++标准(C++11)的新内容。

徐明星,博士,副教授。国家级精品课程“程序设计基础”课程负责人、国家级精品资源共享课“计算机语言与程序设计”建设负责人。主讲《程序设计基础》、《面向对象程序设计基础》、《信号处理原理》等计算机专业基础课程。作为主要成员参与编写的《程序设计基础(第3版)》(清华大学出版社出版)评为普通高等教育“十二五”规划教材。曾获北京市高等教育教学优秀成果一等奖、清华大学青年教师教学优秀奖、清华大学清韵烛光“学生最喜爱的老师”称号。主要研究兴趣包括:语音识别与理解、情感计算和跨媒体计算等。目前,作为项目负责人承担国家自然科学基金面上项目1项;作为项目骨干或子课题负责人参与国家973项目1项、自然科学基金重点项目1项、社会科学基金重点项目1项、863项目1项。

课程章节

直接点击博客网页连接就可以进入下载页面,点击后可能会多次弹出广告页面,请量解,点击普通下载。

点击普通下载。

将网址复制粘贴到浏览器地址栏,点击后可能会有广告,请量解,点击普通下载。

在城通网盘免费下载文件的方法

第一讲 课程简介与编程环境

1.0 课程定位、教学内容  

1.1.1 程序结构与编译链接 

1.1.2 源程序拆分 

1.1.3 多文件编译链接的方法 

1.2 main函数的命令行参数  

作业一  

第二讲 基础语法(1)

2.1 变量定义  

2.2 变量的初始化、类型推导与基于范围的循环  

2.3 函数重载  

2.4 函数参数的缺省值与追踪返回类型的函数   

2.5 类的定义  

2.6 类成员的访问权限与友元  

作业二

第三讲 基础语法(2)

3.1 构造函数析构函数

3.2 赋值运算符重载  

3.3 流运算符重载  

3.4 函数运算符重载

3.5 下标运算符与自增减运算符重载

3.6 静态成员与常量成员

3.7 对象组合

3.8. 1移动构造函数  

3.8.2 移动构造函数  

3.9 default修饰符  

作业三  

第四讲 基础语法(3)

4.1 继承 

4.2 函数重写

4.3.1 虚函数

4.3.2 虚函数

4.4 自动类型转换   

4.5 禁止自动类型转换  

4.6 强制类型转换  

4.7 函数模板   

4.8 类模板   

4.9 成员函数模板

4.10 模板特化  

作业四  

第五讲 找到对象,确定接口 

5.0 引言  

5.1 从FOP到OOP   

5.2 对象在哪里  

5.3 接口在哪儿

5.4 实现接口  

5.5 变与不变:多态的威力  

5.x小结 

第六讲 算法横向拆分,分离步骤

6.0 引言  

6.1 从负载监视器的设计开始

6.2 接口的分离与单一责任原则  

6.3 委托与接口的进一步分解  

6.4 分离不同层面的可变性   

6.X 小结  

第七讲 算法纵向拆分,分离表示

7.0 引言  

7.1 迭代器  

7.2 迭代器的实现

7.3 迭代器与模板  

7.4 算法与数据的解耦 

7.5 抽象结构与类模板

7.6 函数对象与算法分解  

7.7 基于模板的策略模式

7.X 小结

第八讲 基于接口组合,应对复杂变化

8.0 引言  

8.1 已有资源的组合  

8.2 适当引入接口  

8.3 接口不变时的功能变化

8.4 装饰  

8.5 责任的传递与责任链  

8.X 小结   

第九讲 增加抽象层级,隔离复杂变化

9.0 引言  

9.1 通过封装增加隔离、应对变化  

9.1.1 通过封装增加隔离、应对变化    

9.2.1 增加抽象层,应对变化  

9.2.2 增加抽象层,应对变化  

9.3 相互关联对象的创建    

9.4 示例:自动组卷系统设计  

9.5 设计思路(上)

9.6 设计思路(中)

9.7 设计思路(下)

9.X 小结 

课程总结 

评论

热度(1)