基于学-做-拓展-实训的课程案例体系设计
2021-10-14孟力军张东阳
孟力军 张东阳
【摘要】针对在《C语言程序设计》课程教学过程中传统课程教学模式把理论教学与实验教学割裂开来,教学质量难以得到有效保证的问题,以能力培养为目标,以项目设计为主线,利用“学-做-拓展-实训”理论教学与实践教学一体化课程教学模式,设计一套较为完整的《C语言程序设计》课程案例体系,把理论教学与实践教学有机地结合起来,使教师和学生较好地掌握计算机实践类课程高效的教与学的方法,切实提高设计能力、实践能力、创新能力及其他各方面能力。
【关键词】能力培养 项目设计 理论教学与实践教学一体化 课程教学模式
【基金项目】2018年辽宁省教育厅辽宁省普通高等教育本科教学改革研究项目立项优质教学资源建设与共享项目(辽教函[2018]471号)。
【中图分类号】G642 【文献标识码】A 【文章编号】2095-3089(2021)07-0080-02
1.引言
《C语言程序设计》是一门非常重要的课程,是一门非常有趣的课程,也是一门由高中向大学顺利过渡的关键课程[1-3]。但目前大多数教师仍采用传统的课程教学模式授课,把理论教学与实验教学人为地割裂开来。学生在理论学习时,由于对许多繁杂的新知识、新规则弄不明白,很快就失去了学习的兴趣;学生在上实验课时,由于对理论知识不求甚解,只是应付了事。尤其是疫情期间,不得不进行网络授课,但由于网络授课对学生无法进行有效的管理,以及缺乏高效的教学模式,教学质量更难以得到保证。这样就把一门非常重要、非常有趣、对本科生实现由高中向大学顺利过渡的关键课程,变为了一门较为普通的计算机实践类课程[4-6]。
2.实践类课程高效教学模式的探索与实践
十多年来,我们本着以生为本、立德树人的教育理念,综合应用各种科学的理论和方法,把“以能力培养为目标,以系统设计为主线”应用到教材编著、课堂教学、课外设计作业、实践(验)教学、课程设计、考试、综合成绩评定、课程教学质量保障体系等与课程相关的各个环节,使每一门课程都能够形成一个完善的能力培养体系,大力对学生进行能力培养。
针对本科生非常重要、也非常关键的《C语言程序设计》课程,我们以能力培养为目标,以项目设计为主线,以DEV-C++为开发平台,通过“学-做-拓展-实训”理论与实践一体化课程教学模式,设计一套较为完善的《C语言程序设计》课程案例体系,把理论教学与实践教学有机地结合起来,使学生较好地掌握了大学实践类课程高效的教与学的方法,想学、爱学、会学,在切实提高设计能力、实践能力、创新能力和其他各方面能力的同时,较好地实现了由高中向大学的顺利过渡,引领学生健康成长。
3.实验过程及要求
所有学生在课前通过教材或中国大学MOOC等做好预习,并带电脑上课,对每一个知识点,都通过“学-做-拓展-实训”,把理论教学与实践教学有机地结合起来,较好地掌握课程的相关知识及程序设计方法。
学:课程开始,即以一个简单的程序为例,讲授DEV-C++开发工具的使用方法。后续课程,均利用该工具讲授实例,设计程序。
做:要求学生以该实例为例掌握DEV-C++开发工具的使用方法。后续课程,每次通过1~2个程序实例,让学生掌握程序设计相关知识。
拓展:在学生掌握第一个程序设计的基础上,教师对每一个知识点再安排2~3个项目实例,并要求学生完成项目的系统设计分析、算法分析、程序设计、程序运行及运行结果分析等。
实训:布置若干课外设计(实训)作业,让学生利用课外时间独立完成,并撰写项目设计报告,较好地掌握课程的相关知识及程序设计方法。
4.实验教学与指导
本案例(体系)是一个比较完整的实践工程,需要经历计算机软硬件基础知识的学习,以及由一个简单的程序设计,到一个复杂的应用系统设计(基于数组或链表的综合管理系统设计)的全过程。每一个项目均需要完成项目(程序)方案设计论证、设计(算法)分析、程序流程图设计、程序设计、程序运行过程分析、数据测试、项目整体评价、总结提高等工作。在教学过程中,应在以下几个方面对学生进行引导或指导:
(1)工具先行。开课伊始,即让学生掌握DEV-C++开发工具的使用方法,在后续课程中,均利用该工具讲授或设计实例(项目),激发学生的学习激情。(2)以能力培养为核心,以解决实际问题为手段。每一个项目(程序)都是一个完整的、实际的项目,都是为了解决现实中存在的问题而设计的,都是为了切实提高学生的分析能力、设计能力、创新能力及其他各方面能力。(3)做中学,学中做。通过可见的项目(程序)设计,学习不可见的计算机内部结构知识,在实践中掌握C语言程序设计中繁琐、复杂、碎片化的知识,并把所学知识用于项目(程序)设计,把理论与实践有机地结合起来,激发学生的学习兴趣。(4)把“学-做-拓展-实训”作为高效提升计算机类课程实践能力的过程与手段。通过“学”,掌握项目(程序)设计的方法;通过“做”,提高项目(程序)设计的能力;通过“拓展”,进一步提高项目(程序)设计的能力;通过“实训”,举一反三,在大幅提高项目(程序)设计能力的同时,提升自主解决问题的能力、创新能力、团结协作能力、互帮互助能力等,掌握计算机类课程高效的学习方法。(5)每一个项目(程序)均是一个完整的系统设计。从第一个简单的程序设计开始,到完成一个复杂的应用系统设计(基于数组或链表的综合管理系统设计)结束,通过“学-做-拓展-实训”共完成几十个项目(程序)的设计,每一个项目均需要完成项目(程序)方案设计论证、设计(算法)分析、程序流程图设计、程序设计、程序运行过程分析、数据测试、项目整体评价、总结提高等工作。(6)由简入繁,由易到难,循序渐进,成就卓越。从第一个简单的程序设计开始,在学生“零基础”的情况下,通过“周而复始”的“学-做-拓展-实训”,由简入繁,由易到难,循序渐进,到最后完成一个复杂的应用系统设计(基于数组或链表的综合管理系统设计),使学生的分析能力、设计能力、创新能力、团结协作能力、互帮互助能力及其他各方面能力得到全面提升,自信心得到显著增强,精神面貌焕然一新。不仅使學生顺利实现了从高中阶段到大学阶段的成功过渡,而且在大一就迈出了走向卓越的第一步,为学生未来的发展奠定坚实的基础。
5.实验原理及方案
“学-做-拓展-实训”理论与实践一体化教学模式结构主要由课前预习、学、做、拓展、实训、知识学习与能力提升情况分析等几部分组成,通过理论学习、实践提升、理论再学习、实践再提升等周而复始、螺旋式上升的过程,把理论教学与实践教学有机地结合起来。
课前预习:学生在课前通过教材或中国大学MOOC等做好预习,并在电脑上实践。
学:课程开始,即以一个简单的程序为例,讲授DEV-C++开发工具的使用方法。后续课程,均利用该工具讲授实例、设计程序。
做:要求学生以该实例为例掌握DEV-C++开发工具的使用方法。后续课程,每次通过1~2个程序实例,让学生掌握程序设计相关知识。
拓展:在学生掌握第一个程序设计的基础上,教师对每一个知识点再安排2~3个项目实例,并要求学生完成项目的系统设计分析、算法分析、程序设计、程序运行及运行结果分析等。
实训:布置若干课外设计(实训)作业,让学生利用课外时间独立完成,并撰写项目设计报告,较好地掌握课程的相关知识及程序设计方法。
知识学习与能力提升情况总结分析:通过一个“学-做-拓展-实训”周期,了解学生知识学习与能力提升情况,发现问题并在下一个周期中及时改进。
以《C语言程序设计》关键知识点为核心,进行了案例体系的设计,并通过实例的设计,使学生较好地掌握课程的关键知识点。
在学与做的过程中,根据知识点的理解难易程度,对每个知识点设计若干个不等的实例,边做边学,边学边做;在拓展与实训(课外设计作业)的过程中,同样根据知识点的理解难易程度,对每个知识点也设计若干个不等的实例,在拓展中进一步提高学生对知识的掌握程度,在實训(课外设计作业)中,进一步提升学生设计能力、实践能力、创新能力及其他各方面能力。
6.实验报告要求
每一个实训项目(课外设计作业)均为一个完整的课程设计,主要内容包括:
(1)项目(程序)设计要求;(2)项目(程序)设计方案论证;(3)项目(程序)设计(算法)分析;(4)程序流程图设计;(5)程序设计;(6)程序运行过程分析;(7)数据测试;(8)项目整体评价总结;(9)感想、收获、意见、建议、期望成绩等(便于实时改进)。
7.考核要求与方法
考核要求与方法主要如下:
(1)实训项目(课程设计)报告:规范性、完整性、是否存在抄袭现象等。(2)程序设计:规范性、可读性、合理性、容错性、运行结果的正确性等。(3)测试数据:规范性、完整性等。(4)自主创新:(算法)构思的巧妙性、(程序)设计的创新性等。(5)答辩(每一个实训项目均要一对一答辩):课程设计报告问题、程序设计问题、测试问题、创新性等。(6)感想与收获:真情实感、深刻性、独特性等。(7)意见与建议:真实性、普遍性、可借鉴性等(以便根据学生的实时反馈情况,对教学过程进行及时改进)。(8)期望成绩:与实际成绩的符合度及其原因分析。(9)综上,根据各种考评情况,对每个学生给出合理、公正的成绩与评价。
8.案例体系特色或创新
本案例体系主要特色或创新如下:
(1)边做边学,做中学,学中做,通过实训激发学生学习的兴趣。(2)由简入繁,由易到难,通过“学-做-拓展-实训”激发学生探索的热情。(3)运用多种独特、高效的教学方法,使学生想学、爱学、会学。(4)理论与实践教学一体化,快速提升学生的算法分析能力、程序设计能力、创新能力及其他各方面能力,可快速培养大批高质量的程序设计人才。
9.结语
本案例体系通过“学-做-拓展-实训”,把理论教学与实践教学有机地结合起来,较好地解决了理论教学与实践教学“两张皮”的问题,使学生较好地掌握了大学实践类课程高效的学习方法,切实提高了设计能力、实践能力、创新能力及其他各方面能力,顺利实现从高中阶段到大学阶段的顺利过渡,为其他课程的学习奠定坚实的基础,为未来的发展奠定坚实的基础。
参考文献:
[1]邹运兰,柴本成.互联网+教育背景下的C语言程序设计教学改革探究[J].计算机教育,2020(5):72-74.
[2]张高文,赵西坡,李学锋.基于OBE理念的人才培养目标评价机制的构建与实施[J].大学教育,2019(1):17-19.
[3]王振铎,王振辉,边倩.重在设计能力的程序设计类课程教学改革与实践[J].教育教学论坛,2014(20):39-40.
[4]李江昊,刘丰,王伟.理论实践强结合性课程知行合一教学改革与探索[J].计算机教育,2020(6):179-183.
[5]张泳,柯海丰,陈蒙.计算机类专业学生程序设计应用创新能力培养体系构建[J].计算机教育,2019(5):36-38.
[6]史颜玲,李国佳.MOOC对C语言程序设计课程教学改革的推动[J]. 计算机时代,2018(7):92-93.
作者简介:
孟力军(1969年-),女,汉族,辽宁省沈阳市人,工程师,研究方向为实践教学研究、高等教育课程教学模式与人才培养模式探索实践等。