《C++面向对象程序设计》教学大纲 学时 适用专业 先修课程 教材 48 C语言程序设计 彭源 等.《Qt C++编程从入门到实战—微课视频版》. 清华大学出版社. 学分 3 计算机科学与技术、软件工程、信息安全、网络工程等 一、课程简介 本课程是一门实践性很强的课程,按照教育部“金课”建设的理念,将课程深度和难度进行拓展,融合了面向对象程序设计和可视化图形编程内容,引入“探究式”、“翻转式”、“案例式”等教学模式纳入课堂教学,在知识输入的基础上,着重培养学生的编程动手能力,训练解决问题的思维能力。 二、课程的性质与任务 本课程的性质:本课程是计算机科学与技术、软件工程、信息安全、网络工程等IT及相关专业的基础必修课程,主要在图形界面的框架上讲授C++面向对象编程,主要内容为C++语言的基本概念、面向对象程序设计和可视化图形编程框架。前驱课程为C语言程序设计。 本课程的任务:以图形化编程框架Qt为载体,以C++面向对象机制为主,使学生在学习过程中逐步由C的面向过程编程过渡到图形化的面向对象编程,进而熟练的掌握C++面向对象编程的基本知识和基本技能,为后续专业课程的学习奠定坚实的程序设计基础和正确的编程思想。 三、课程目标 1、能掌握面向对象程序设计和Qt GUI框架的基本知识,包括类和对象、继承和派生、多态、静态成员与常成员、友元与运算符重载、常见窗口和布局、信号槽通信机制、界面设计、标准对话框、容器、事件机制、数据I/O和文件操作等。 2、能运用面向对象和Qt的基本知识思考、识别和判断解决实际编程问题时程序设计应具有的基本结构和实现步骤,能对实际的编程应用问题进行有效分解,正确分析和描述问题的功能需求特征。 3、能认识到在应用开发时,涉及功能实现的分析与设计存在多种可选方案,能对问题的功能需求进行分析并提出适合的解决方案。 4、能运用面向对象和Qt框架知识,借助帮助文档和文献,实现实际编程应用的开发,并进行总结、获得经验,了解影响功能实现和技术方案的各种因素,对比分析不同设计方案。 5、能理解工程职业道德和规范,具备科学精神和工程师的基本素养,具备科技报国的家国情怀和使命担当。 6、通过实验设计实现过程中的组内讨论,验收过程中的报告撰写、陈述发言等,培养专业相关的表达能力。 四、理论教学内容及安排 章标题 主要教学内容 §1.1 C++程序设计语言 §1.2 不同于C的C++常见语法 §1.3 纯C++项目开发流程 §1.4 程序设计方法 §1.5 Windows图形用户界面编程 §1.6 基于Qt的图形用户界面编程 §2.1 类和对象 §2.2 构造函数和析构函数 §2.3 Qt窗口及部件初探 §2.4 更复杂的类和对象 §2.5 相关指针 §2.6 Qt信号槽通信机制 §3.1 类的继承与派生 §3.2 派生类的构造与析构函数 §3.3 二义性问题与虚基类 §3.4 Qt自定义派生类 §3.5 Qt中的界面 §3.6 Qt常用部件 §4.1 静态成员 §4.2 Qt标准对话框 §4.3 常成员 §4.4 Qt中常见的数据类 §4.5 程序国际化 §5.1 静态多态—模板 §5.2 Qt中的容器 §5.3 动态多态 §5.4 纯虚函数与抽象类 §6.1 事件处理机制 §6.2 常见事件 §6.3 Qt二维绘图 §6.4 Qt抽象部件的可视化实现 §7.1 标准C++中的流 §7.2 Qt的I/O设备 §7.3 Qt文件操作 §7.4 Qt目录操作 §7.5 Qt应用程序主窗口设计与使用 §8.1 友元 §8.2 重载运算符 推荐学时 2 第1章 程序设计基础 2 2 2 2 2 第2章 类和对象 第3章 继承与派生 2 第4章 类的静态成员与常成员 2 2 2 2 2 2 第5章 多态 第6章 Qt事件及绘图 第7章 数据I/O和文件操作 2 2 2 第8章 友元与运算符重载 §8.3 Qt多文档应用程序 五、实验教学内容及安排 实验环节通过上机编程实践,让学生进一步学习和掌握面向对象程序设计方法、图形用户界面框架设计和使用方法。帮助学生深入理解面向对象和Qt GUI框架的核心内容,培养学生的实践动手能力,提高学生的综合素质。 序号 实验名称 主要内容 掌握C++的基本语法;熟悉Qt Creator集成开发环境;了解完整的Windows应用程序的组成结构;了解最简单的QT图形用户界面程序的编写;掌握程序发布、设置程序图标等常用操作。 实验类型 推荐学时 选1 C++和GUI编程初探 基础规范型 2 2 类的使用、简单GUI交互 派生类、信号槽和界面设计 掌握类的定义、实现与对象的使用;掌握组合类的设计;初步熟悉常见Qt窗口和部件,根据帮助查找、关联和使基础规范型 用它们的信号和槽;了解常见的项目文件组织形式。 掌握派生类的定义、能在Qt已有窗口类的基础上编写自己的类;了解虚基类的概念;掌握界面设计师工具的使用;掌握自定义信号、槽的编写。 掌握静态成员的定义和使用;掌握Qt常见标准对话框及其静态成员的使用;了解const关键字在类中的作用;熟悉常见QString、QChar等类型;熟悉程序国际化的实现过程。 掌握模板的定义与使用;熟悉Qt中的常见容器;掌握虚函数、抽象类等概念的定义与使用。 了解事件处理机制,掌握常见的事件、及对它们的处理;熟练掌握画笔画刷的使用;了解图像绘图设备,掌握在其上进行绘制的方法。 基础规范型 2 3 2 4 静态成员和常成员的使用 基础规范型 2 5 多态的实现与容器的使用 事件处理与绘图 文件读写和主窗口实现 友元、重载与多文档应用 基础规范型 2 6 基础规范型 2 7 熟悉标准C++中文件的读写过程;掌握Qt文件读写、综合设计型 目录设置;掌握主窗口的构成、设计与使用。 了解友元的作用,掌握友元的写法;掌握二元运算符的重载;掌握提取和插入运算符的重载;熟悉Qt多文档应用 2 8 综合设计型 2 六、课程考核: 实施过程化考核,综合考察各方面能力.课程的成绩评定方法为: 课程总成绩 = 过程性考核成绩×60%+平时成绩×40% 其中,平时成绩包括线上作业、课后作业的完成情况、课程实验完成情况等;过程性考核包括三次学期中考核和一次期末考核。 七、课堂思政 本文来源:https://www.wddqw.com/doc/3094ee2a3a68011ca300a6c30c2259010202f3ef.html