0 引 言
新工科是指以信息技术为核心,融合多学科知识和技术,致力于培养具有创新、实践和跨学科能力的工程技术人才[1]。C++ 编程是计算机科学与工程领域中的重要基础知识。随着信息技术的快速发展和应用领域的不断扩展,对具备 C++ 编程技能的人才需求也越来越大。传统的 C++ 编程基础教学模式存在一些局限性[2],传统模式通常将 C++ 语言的基本语法、面向对象编程等知识作为主要教学内容,重知识轻能力、重语言轻设计,缺乏与实际应用场景的结合,无法适应新工科产业发展对程序设计能力培养提出的更高要求。为了打造深度学习的课堂教学,C++ 编程基础课程的课程改革势在必行。
1 C++编程基础课程的教学现状
C++ 编程基础是针对新工科专业(包括智能制造专业、机器人工程专业、大数据技术与数据科学专业、人工智能专业、微电子专业及集成电路专业)等非计算机类专业的大一新生开设的一门重要的公共基础双语课程,是大学生必须掌握的一项数字化技能,培养学生的逻辑思维和解决问题的能力,为他们日后的学习与职业发展打下坚实的基础。
2019 年 3 月习近平总书记强调坚持“八个统一”的教育理念[3],即坚持政治性和学理性相统一、价值性和知识性相统一、建设性和批评性相统一、理论性和实践性相统一、统一性和多样性相统一、主导性和主体性相统一、灌输性和启发性相统一、显性教育和隐性教育相统一,不断增强学生的“四个自信”,这为 C++ 编程基础的公共基础课教学指明了新的方向。
随着科技的飞速发展,面临新工科背景下产生的新需求,传统的 C++ 编程基础课程存在以下不足。
1.1 传统课程及教材内容通专融合性不强
现有的 C++ 编程语言课程及教材内容偏理论性,以学习语言的语法、语义、数据类型等内容为主,未能融入专业知识点及人工智能元素,重知识轻能力,重语言轻设计,缺乏实际应用与案例分析的环节。这导致学生对编程的兴趣和动力不足,难以将所学的知识应用于实际专业领域问题的解决。
1.2 难以实现差异化教学
传统的教学方法大多局限于传统的线下教学,以教师为中心,与信息社会发展对知识获取途径的多元化需求不适应。无法根据学生的个体差异和个性化发展需求因材施教,存在有的学生“吃不饱”,有的学生“吃不下”,不利于创新实践能力的培养[4]。
1.3 产教融合不足
高校不了解相应产业需求,企业不熟悉教学规律,学生不熟悉国产化平台和技术,产教融合不足。在创新人才培养过程中,创新创业教育与现有通专融合人才培养体系未能有机融合,如何贯穿第一课堂和第二课堂,怎样打通高校与产业的界限,仍待探索。
2 C++编程基础教学改革
2.1 构建贯穿融合的1+X+Y课程体系
1+X+Y 课程体系如图1所示,从“完整性、系统性、科学性、交叉性、发展性”等方面重构教学内容,确定有效的内容组织形式。
通用基础知识教学是培养学生 C++ 编程基本能力的重要部分,包括 C++ 编程语言的基本语法、数据类型、运算符、控制结构、数组、函数、面向对象编程等;专业实践技能教学旨在培养学生在特定领域应用 C++ 编程的实践能力,选择一个或多个 C++ 编程相关的专业实践领域,例如游戏开发、嵌入式系统、数据结构与算法、大数据分析等;学科拓展是指将教学与产业实践相结合,使教学内容与实际需求更加贴切,提高学生的就业能力和创新能力[5]。
2.2 基于AI赋能、通专融合和产教融合的教学模式
在“知识—能力—素质”三位一体的教学目标下,建立基于AI 赋能、通专融合和产教融合的创新教学模式(如图2所示)。从问题求解到设计实现、从实践驱动到产业驱动,全方位逐步提升学生的系统开发能力和创新创造能力。
2.3 面向新工科构建交叉融合课程内容
按照 5 个递进层次组织课程内容,并以知识集群横向聚合的方式覆盖基础性到高阶性知识的示例,涵盖 C++ 面向智能制造、机器人工程、微电子与集成电路、大数据分析、人工智能构建等交叉融合课程内容(见表1)。
1)通识了解层。
计算机科学导论:介绍计算机科学的基本概念、发展历程和应用领域,探索计算机在智能制造、机器人工程、微电子、大数据分析、人工智能等领域的应用。
2)基础掌握层。
C++ 编程基础:学习 C++ 编程语言的基本语法、数据类型、流程控制、函数等,并进行简单的编程练习。
3)交叉融合层。
C++ 面向智能制造、机器人工程、微电子与集成电路、大数据分析、人工智能构建等专业构建交叉融合的课程内容。以人工智能专业为例,C++ 在人工智能专业扮演着重要的角色,它不仅提供了强大的编程能力和性能优势,还为开发者提供了丰富的工具和库来实现各种复杂的AI算法。
例如,可以使用 C++ 实现机器学习中的线性回归模型。具体步骤包括引入 Eigen 库(Eigen 库是一个 C++ 模板库,用于线性代数、矩阵和向量操作);加载数据(从 CSV 文件读取数据,并将数据存储在 Eigen 的矩阵和向量中);实现线性回归模型(使用矩阵运算公式进行线性回归模型的参数优化);评估模型(计算模型的预测值与实际值之间的误差)。
这些内容将帮助学生深入理解 C++ 在智能制造、机器人工程、微电子、集成电路、大数据分析、人工智能等领域的应用。他们将学习如何使用 C++ 编写控制算法、图像处理算法、嵌入式系统驱动程序、大数据处理代码以及机器学习和深度学习模型的实现。通过这些实践,学生将获得在相关领域中应用 C++ 进行开发与创新的能力,为未来的职业发展打下坚实的基础。
4)实践应用层。
C++ 编程基础可实践于不同的应用领域(见表2),包括游戏开发、嵌入式系统开发、图像处理和计算机视觉、网络编程、科学技术和数值模拟、大数据处理、智能系统和机器学习等。
5)拓展产业层。
在拓展产业层,C++ 可应用于多个领域,包括游戏开发、嵌入式系统、高性能计算、金融科技、大数据和人工智能、自动驾驶和智能交通等(见表3)。
例如 C++ 可以应用于嵌入式系统的智能家居控制系统中,包括温度监测及控制、照明控制以及远程访问控制,可以使用 C++ 和 Arduino 来模拟家庭设备和一个简单的控制界面。
随着技术的不断发展以及新兴领域的涌现,C++ 的应用领域也在不断扩展。保持学习并关注最新的技术趋势,不断更新并拓展行业知识,有助于满足现代工程和科技领域的需求,培养出具备广泛知识背景和跨领域能力的工程师和拔尖人才。
2.4 AI赋能+实践驱动助力个性化差异化教学
借助希冀平台的 AI 助教,实现机器人 AI 助教智能答疑,构建 AI 赋能的 C++ 编程基础个性化差异化教学体系。探索线上线下混合式教学,建立线上知识点微视频资源,线下开展翻转教学,AI 助教与任课教师虚实结合,进行个性化差异化辅导。
如图3所示,建立多元实践平台,实践驱动、项目驱动、以赛促学,提供多层次化实践项目,让学生根据自己的兴趣、能力水平等选择合适的领域或主题进行实践,激发学生的学习热情和主动性。引导学生进行实践项目规划,包括项目目标、任务分解、时间安排、资源需求等。学生学会制订明确的目标和阶段性计划,有效管理并组织实践活动;鼓励学生在实践项目中进行团队合作,培养学生协作与沟通的能力,使他们能够有效分工合作、解决问题和实现共同目标。
2.5 结合百度飞桨产教融合教学
飞桨以百度多年的深度学习技术研究为基础,是中国首个自主研发、功能丰富、开源开放的深度学习平台,将实践驱动环节与百度飞桨平台进行知识整合、技术整合、资源整合等,打通教学与产品开发的最后“一百米”,解决程序设计能力培养与产业实践脱钩问题,促进 C++ 编程教学与产业领域最新技术接轨,使学生了解企业实际开发环境,激发科技兴国情怀,增强创新意识。
以糖果分类实验为例,要求学生课前预习实验指导书,观看实验讲解微视频,查找 AI Studio 的开源资源,小组讨论;课中教师进行实验讲解,学生进行实验编程,小组展示;课后撰写实验报告,进行实验总结,反哺平台,为平台贡献优秀资源。
2.6 多维教学评价体系
本课程采用多维教学评价体系,变期末考试一考定终身为过程式激励性考核,全面评估学生在课程中的学习情况和能力发展,从以下几个方面进行评价。
(1)知识掌握情况评价:包括考试成绩、作业成绩等,这一维度评价学生的学习效果和知识掌握情况。
(2)实践能力评价:通过实验报告、项目作品、实践操作等方式评价学生的实践能力和应用能力。
(3)创新思维评价:通过学生的创新项目、研究报告、创意作品等来评价学生的创新思维
能力。
(4)协作能力评价:通过小组项目评价、团队协作报告等方式评价学生的协作能力。
(5)自主学习评价:通过学生的学习计划、学习日志、自主学习报告等方式评价学生的自主学习能力。
(6)拓展能力评价:通过学生在百度飞桨平台上的学习日志、分享等,评价学生的产学拓展
能力。
采用多种评价方法和工具,包括问卷调查、观察记录、评价表格等,综合考虑多个评价维度的数据和信息,确保评价内容全面性、客观性和公正性。同时,将评价的结果反哺教学,促进教学质量的提高,推动个性化差异化教学的实施,促进学生全面发展与成长。
3 应用效果
经过多轮教学实践,采取的一系列教学改革取得了良好的教学效果。基于 AI 赋能的课程教学平台促进了教学的闭环反馈,有效支撑了差异化个性化教学,学生在知识体系掌握、知识应用能力方面有了较大的提升。从近几年的比赛结果可以看出,学生的创新能力得到很大提升,为培养创新人才作出了一定的贡献(见表4)。
“简单决策树应用:动物分类问题”课程案例内容被评为第五届中国计算机教育大会优秀教学案例三等奖。
4 结 语
为满足新工科建设和产业发展的新需求,基于以立德树人为根本、以学生发展为中心的教学理念,以及“知识—能力—素质”三位一体的教学目标,实施了 AI 赋能、通专融合和产教融合的创新教学模式,打通了企业资源进入高校的最后“一百米”,取得了良好的教学效果,为培养“三创”人才进行了有益的教学探索。
参考文献:
[1] 林健. 面向未来的中国新工科建设[J]. 清华大学教育研究, 2017, 38(2): 26-35.
[2] 董敏, 毕盛, 毛爱华, 等. 新工科背景下C++编程基础双语课程的教学探索[J]. 当代教育实践与教学研究, 2024(2): 89-92.
[3] 百度百科. 八个统一[EB/OL]. [2024-05-11]. https://baike.baidu.com/item/八个统一.
[4] 何国斌, 吴春明. C++面向对象程序设计教学改革与实践[J]. 西南师范大学学报(自然科学版), 2016, 41(11): 189-193.
[5] 毕盛, 董敏, 冼进, 等. 结合机器人技术的嵌入式实践教学[J]. 实验室研究与探索, 2017, 36(9): 167-169, 224.
基金项目:广东省本科高校教学质量与教学改革工程建设项目“AI 赋能+通专融合+产教融合的 C++ 编程基础课程改革与实践”;华为产学合作协同育人项目“基于端云协同应用开发的智能系统课程建设”;粤港澳大湾区高校在线开放课程联盟 2024 年教育教学研究和改革项目“新工科背景下面向系统能力培养的编译原理课程教学探索”;2024 年郑州云海科技有限公司教育部产学合作协同育人项目“希冀平台编译课程在线资源建设”;华南理工大学本科深度学习课堂项目(专创融合型)“编译原理(AI 协同教学)”;华南理工大学第十批探索性实验项目“面向创新能力培养的编译原理实验探索”;广东省高校教学质量与教学改革工程项目“基于六步法的计算机硬件类全英文课程教学改革与实践”。
第一作者简介:董敏,女,副教授,研究方向为智能系统与物联网,hollymin@scut.edu.cn。
引用格式:董敏, 毛爱华, 毕盛, 等. AI赋能+通专融合+产教融合的C++编程基础课程教学探索[J]. 计算机教育, 2025(2): 60-65.