以C++语言为基础,从设计层面介绍程序设计的重要设计思想和经典设计模式,如面向对象程序设计、基于接口编程、泛型编程等,还将介绍对标准模板库STL。
播放:49064次,课程ID:4230460
以C++语言为基础,从设计层面介绍程序设计的重要设计思想和经典设计模式,如面向对象程序设计、基于接口编程、泛型编程等,还将介绍对标准模板库STL。
--1.0 课程定位、教学内容
--1.1 编程环境与工具
--1.2 main函数的命令行参数
--作业一
--2.1 变量定义
--2.2 变量的初始化、类型推导与基于范围的循环
--2.3 函数重载
--2.4 函数参数的缺省值与追踪返回类型的函数
--2.5 类的定义
--2.6 类成员的访问权限与友元
--作业二
--3.1 构造函数析构函数
--3.2 赋值运算符重载
--3.3 流运算符重载
--3.4 函数运算符重载
--3.5 下标运算符与自增减运算符重载
--3.6 静态成员与常量成员
--3.7 对象组合
--3.8 移动构造函数
--3.9 default修饰符
--作业三
--4.1 继承
--4.2 函数重写
--4.3 虚函数
--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 变与不变:多态的威力
--6.0 引言
--6.1 从负载监视器的设计开始
--6.2 接口的分离与单一责任原则
--6.3 委托与接口的进一步分解
--6.4 分离不同层面的可变性
--7.0 引言
--7.1 迭代器
--7.2 迭代器的实现
--7.3 迭代器与模板
--7.4 算法与数据的解耦
--7.5 抽象结构与类模板
--7.6 函数对象与算法分解
--7.7 基于模板的策略模式
--8.0 引言
--8.1 已有资源的组合
--8.2 适当引入接口
--8.3 接口不变时的功能变化
--8.4 装饰
--8.5 责任的传递与责任链
--8.X 小结
--9.0 引言
--9.1 通过封装增加隔离、应对变化
--9.2 增加抽象层,应对变化
--9.3 相互关联对象的创建
--9.4 示例:自动组卷系统设计
--9.5 设计思路(上)
--9.6 设计思路(中)
--9.7 设计思路(下)
--9.X 小结
--课程总结
--期末考试
黄震春,清华大学计算机科学与技术系副研究员。2002年获得博士学位并留校任教,主要从事分布式计算、并行计算和空间信息系统方面的研究工作,曾主讲“面向对象的程序设计”、“微计算机技术”、“数据库技术及应用”等多门计算机专业基础和专业课程。
徐明星,博士,副教授。国家级精品课程“程序设计基础”课程负责人、国家级精品资源共享课“计算机语言与程序设计”建设负责人。主讲《程序设计基础》、《面向对象程序设计基础》、《信号处理原理》等计算机专业基础课程。作为主要成员参与编写的《程序设计基础(第3版)》(清华大学出版社出版)评为普通高等教育“十二五”规划教材。曾获北京市高等教育教学优秀成果一等奖、清华大学青年教师教学优秀奖、清华大学清韵烛光“学生最喜爱的老师”称号。主要研究兴趣包括:语音识别与理解、情感计算和跨媒体计算等。目前,作为项目负责人承担国家自然科学基金面上项目1项;作为项目骨干或子课题负责人参与国家973项目1项、自然科学基金重点项目1项、社会科学基金重点项目1项、863项目1项。