苏虹 李萍
摘要:《C语言程序设计》是高校理工类非计算机专业学生的公共基础课。在工程教育认证背景下,如何满足工程认证标准,培养社会所需要的复合型专业人才,为课程的教学改革提出了新要求。紧密围绕新目标,整合教学内容、增加综合实验、建设线上资源、完善教材、部分教学内容采用翻转课堂教学,全方位提高学生学习积极性主动性,为培养学生解决复杂工程问题的能力打下坚实的基础。
关键词:C语言;翻转课堂;过程考核;工程教育认证
中图分类号:G642 文献标识码:A
文章编号:1009-3044(2021)07-0139-02
Abstract:C Language Programming is a General Foundation Requisite for non-computer majors in science and engineering. Under the background of engineering education accredition, the new requirement of C Language Programming teaching reform met the engineering education accreditation standards and training the compound professional. Based on the teaching objectives, integration of the teaching contents and resources, improving teaching materials, inverted classroom used partly, improved students' enthusiasm and initiative in learning, laid a Solid Foundation for the cultivation of students' ability to solve complex engineering problems lay a solid foundation.
Key words: C Language; Inverted Classroom; Process Assessment; Engineering Education Accreditation
1 引言
2016年我國的工程教育加入《华盛顿协议》,为中国工科学生走向世界提供了国际认可的通行证。2015年,中国工程教育认证协会颁布了工程认证标准,对我国高等学校本科工程教育专业课程体系提出了新的要求,也使工程教育有了人才培养的国际标准。
《C语言程序设计》课程是高校理工类非计算机专业的公共基础课,承担着培养学生计算思维的责任,“使学生通过程序设计的学习,掌握计算思维中特有的抽象、递归、复用等思维方法”[1],为今后使用计算思维分析和解决专业问题奠定坚实的基础。
在实际教学中,学生普遍反映《C语言程序设计》学习难度大、较难掌握的一门课。这是由于以下两方面的原因:(1)学生被动听课,接受程度不高,一旦学习过程中出现问题没有及时解决,后续的内容就会有更多的不理解、学不会的情况出现;(2)该课程不是专业类课程,学生投入精力不足,尤其是课程后半部分难度较大,学生的问题越积越多,从而导致学生越来越听不懂,直到完全放弃。所有这些问题不能仅仅依靠任课教师言传身教,最终还是要依靠任课教师寻找解决方案,带领学生走出学习困境。
郑州轻工业大学各工科专业深入开展工程教育认证工作,把工程教育认证理念融入人才培养的全过程。各工科专业根据工程教育认证毕业要求对《C语言程序设计》课程有了新的要求,即支撑“……选用满足特定需求的现代工具,模拟和预测专业问题,并能够分析……”和“能够在团队中独立或合作开展工作”这两个指标点,为《C语言程序设计》的改革提出了明确的目标。
2 教学全过程体现以学生为中心的原则
《C语言程序设计》要解决的根本问题还是学生本身,以学生为中心,激发学生的学习兴趣,推动学生自主学习,达到任课教师的既定目标。
笔者采用多种教学手段相结合,针对专业特点通过案例驱动、整合教学内容、建设在线资源、组成学习团队、注重同学生沟通等方式,提高学生的学习兴趣,推动学生学习。使用在中国大学MOOC“爱课程”平台的自建线上教学资源为学生提供深度学习资源和复习回顾,利用平台的测试与作业、考试、讨论区等功能模块,对学生学习过程进行精细化管理,达到对学生进行过程考核的目的。学习团队的建立更有助于团队成员之间一对一帮助以及团队和任课教师的沟通。
部分教学章节采用翻转课堂这种教学模式,任课教师指定学习任务,明确学习目标,使学生成为课堂的主体,从而激发学生的学习热情,达到任课教师提升教学效果的目的。
3 教学内容注重培养学生解决复杂工程的能力
C语言程序设计这门课着力培养学生的计算思维、利用基础理论设计和解决复杂的工程问题。那么按此要求安排实践教学内容,设计以恰当的教学实践使学生经历复杂工程的构建,体现知识、技术、方法的综合应用。
首先,在课时内增加以设计和实现信息系统为目标的综合实验环节(以下简称综合实验)。对于理工类非计算机专业学生,由于学时限制,没有计算机专业《C语言程序设计》课程的课程设计环节,因此学生只是掌握了C语言的概念和原理等理论知识,对复杂的具体问题缺乏综合的分析和解决能力。因此,设置综合实验环节对于非计算机学生的重要性不言而喻。综合实验是模拟真实项目的开发,涉及大学计算机公共基础课的全部知识,将教学与项目实践有机融合,促使学生掌握深层次的工程原理,结合工程实际使学生在协作、沟通、表达、组织能力上得到全面的锻炼。
其次,由于C语言的知识点多而繁杂,学生容易迷失在语法细节当中,耗费了过多的时间和精力却忽视了使用程序设计解决实际问题这一核心目的。在课堂讲授过程中,以综合实验相关案例推动教学内容,重视编程设计思想的主线而不拘泥于刻板语法细节,使学生能够通过对C语言基础知识的学习,深刻理解程序设计的基本原理并能够与专业相结合。
最后将以上设计理念落实在根据教学内容编写教材,力求教材成为学生最有力的参考书。将课堂上不能一一涉及的细节都体现在教材中,使学生在课堂上掌握程序设计的重点,课下在教材中能深入学习语法规则。例如开始学习C语言程序设计时,要学习数据类型、运算符与表达式等内容,需要记忆的语法知识繁多而枯燥,如果全部按部就班教学会让学生刚开始学习就失去了兴趣。作者课上只讲授编程初学者可以用到的基本数据类型、运算符、表达式,更多的介绍编写在教材中。学生听课后,会开始简单的编程,以后随着学习的深入、编程的难度增加,需要更多的数据类型、运算符,让学生在用到时再回到本章教材中查找和再学习,掌握效果更好。
4 翻转课堂提升教学效果
翻转课堂要求学生通过线上课堂完成项目的知识准备,课堂时间用于师生共同研究、讨论、解决问题。以下以综合实验为例,阐述《C语言程序设计》翻转课堂的任务设置与具体实施情况。
《C语言程序设计》的综合实验环节设置为四周,指定题目与学生自选题目相结合,但必须包含数据的增加、删除、修改、查询和统计等功能,要求5~7人一个小组,每一组指定一名组长,负责项目的实施与成绩评定。
综合实验采用翻转课堂教学模式,主要是因为C语言程序设计的理论基础知识已经全部学习完成,而综合实验项目设置为学生提供了发挥自主设计的平台,具备翻转课堂的知识学习的条件。学生在学习程序设计的最后阶段采用这种参与度非常高的教学方式,可以极大地发挥学生的主观能动性、学生由综合实验案例推动将整个学期的知识进行了复习,为展示小组设计亮点还要通过再学习使知识掌握程度进一步提升。
具体实施阶段,任课教师在第一次理论环节进行综合实验任务、实验报告的讲解,使学生了解项目小组组成的规则,公布综合实验成绩考核方法,布置每周任务进度。第一次实践环节,小組内成员根据任务写出任务书,制定设计和实施方案,最后进行分工。第二次理论环节,由学生以小组为单位汇报小组组成、分工、初步设计情况,任课教师现场点评。第二次实践环节,学生对任课教师提出的建议和意见进行调整、修改。第三次理论环节,学生汇报设计进度,基本可以把界面设计完成,并把各个模块完成 。第三次实践环节,由任课教师对学生产生的问题进行答疑。学生课下进行模块集成、调试。第四次理论环节,学生进行项目完成汇报。第四次实践环节,学生对项目进行最后修改完善,并撰写实验报告。
综合实验锻炼了学生的综合能力,又培养了学生的团队合作精神,满足了工科专业工程认证对课程的要求。
5 教学改革保持反馈以持续改进
“工程教育认证需要建立一种具有‘评价-反馈-改进的反复循环、持续改进机制”[2] ,教学改革要以评价为基础,保持反馈,以改进达到更良好的效果。学生成绩是教学效果的重要体现,所以学生的考核方式、成绩组成要实现科学化、标准化,由结果考核转向过程考核。
成绩组成为:课程成绩=平时成绩*40%+考试成绩*60%
平时成绩=课堂表现*25%+综合实验*25%+平时作业*50%
考试采用机试形式,其中选择题20分,考核课程所有章节的基本概念;填空题20分,考核二维数组、字符数组和字符串、结构与结构数组内容;简单程序设计题20分,考核学生的基本程序设计能力,主要是数列求和题;综合应用题50分,考核该课程所学知识的综合应用,突出对解决复杂问题能力的考核。
教学改革以考核反馈为持续改进的标准和依据,每学期进行分析、调查、汇总,制定下一步改革的措施。
以建筑环境专业为例,如表1所示,从2017级学生的考试成绩分析可以看出选择题、填空题和简单程序设计题得分率都偏低,说明学生基础知识掌握不牢。教改后,教学中突出重点,教材力求知识全面。2018年课程组录制讲课视频在爱课程平台中,并且除了作业又增加了测验环节,旨在增强学生掌握知识的准确性,反映到2018级学生成绩中基础题得分率有较大的提高。2018年增加了综合实验环节,增强了学生的综合处理能力,综合实验环节又采用了翻转课堂教学法,也使综合应用题得分率又持续提高。
6 结语
《C语言程序设计》是高校理工类非计算机专业的公共基础课,以工程教育认证为导向,培养具有工程应用能力的复合型专业人才,为课程教学改革提出了新要求。优化教学内容,将教材打造成最有效的课程参考书,并在多种教学方法配合下,部分教学内容采用翻转课堂,有机融合线上/线下教学优势,进一步提高了学生的学习积极性和主动性,从大学一年级就培养学生用基本理论解决复杂问题的能力,满足了工程教育认证对学生的毕业要求。
参考文献:
[1] 徐秋红,蔡娟.新工科视角下程序设计课程教学方法研究改革[J].高等农业教育,2019(6):74-77.
[2] 张义,唐友名,孙贵斌,等.面向工程教育认证的专业建设持续改进研究与实践[J].教育教学论坛,2019(32):159-160.
【通联编辑:光文玲】