余小东 杨孟辑 于 曦 刘永红 赵卫东 聂莉莎
(成都大学计算机学院 四川成都 610106)
面向对象程序设计是计算机及其相关专业的核心课程,也是解决软件工程领域中复杂工程系统的基础课程,其主要目标是使学生掌握面向对象的编程思想,对培养学生程序设计思维和提高学生编程能力有极其重要的作用。
虽然很多高校对该课程的教学进行了改革,但是该课程的教学目前还存在一些问题[1][2]。首先,该课程的教学学时安排非常有限,很难在有限的学时里既向学生传授全面的理论知识,又要锻炼学生的实践编程能力。其次,实践教学环节中,老师很难掌握学生实践能力的实际情况。因此,为了解决当前面向对象程序设计课程教学过程中存在的问题,提高教学质量,本文利用现代信息技术发展的优势,以“超星”网络教学平台和 “希冀”平台(CourseGrading)分别作为理论和实践环节教学的载体,积极探索该课程的混合式教学改革与实践模式。
面向对象程序设计课程在计算机及其相关专业的培养方案中起到承上启下的作用,承接先修课程C语言程序设计,同时为后续的软件工程、Web编程、移动开发技术等课程做铺垫。由于课程学时有限,很难在常规教学过程中涵盖所有内容,因此有必要对该课程的理论教学内容进行梳理。面向对象程序设计这门课程不是简单的一门程序设计语言课,而是对面向对象编程思想的掌握,其主要教学目的是培养学生面向对象程序设计思维和提高学生编程能力。为了使学生通过该课程的学习达到能采用面向对象程序设计思想去设计和解决综合的实际问题的目的,将该课程的教学内容分为必学内容和扩展内容,如图1所示。必学内容是教学大纲中要求学生必学要掌握的知识点,分为一般知识点和重难点。扩展内容是学生自愿学习的内容,老师将相关的学习视频和资料整理在网络教学平台供学生学习,目的是扩充学生的知识面,为综合项目的开发提供更全面的知识框架。
图1 面向对象程序设计课程教学内容安排
本文中基于网络教学平台的混合式教学模式,以“超星”网络教学平台和“学习通”手机APP等网络工具为载体,改变传统课堂单一的教学模式,实现老师和学生角色的翻转。在混合式教学模式中,通常将教学过程分成课前、课中和课后三个阶段[3][4],如图2所示。课前,老师将相关的教学任务、资料等发布在网络平台,并通知学生按时完成,同时对学生课前的完成情况进行监控;学生则通过“超星”网络教学平台和“学习通”手机APP完成课程任务点的学习,对课程内容形成初步的认识。课中,老师根据学生课前的学习情况及学生所提出的问题,对重难点内容通过小组讨论、实际案例等方式进一步加强学生对课程内容的深入理解。课后学生可通过“超星”网络教学平台和“学习通”手机APP对所学内容进行回顾,进一步巩固知识点,同时可以学习课程教学内容中的扩展内容;老师则根据学生提出的问题,进行在线讨论和在线答疑。
图2 基于网络教学平台的混合式教学过程设计
面向对象程序设计课程实践教学是该课程整个教学环节中重要的一部分,其目的是培养和提升学生的实际编程能力,希望学生通过实践掌握如何使用面向对象程序设计思想去解决实际工程问题。传统的实践教学环节通常都是在学校固定的实验室(机房)完成,虽然老师给学生布置了较多的实践任务,但是由于学生众多,老师无法对每个学生编写的程序进行正确性验证,实践考核通常以纸质实验报告的形式呈现,因此很难掌握学生实践能力的真实情况。
为了让老师更好地掌握学生实践环节的具体情况,同时提高学生的实践能力,本次教学改革过程中引入“希冀” 实验教学网络平台,制定基础实验和进阶式课程设计相结合的实践教学方案。基础实验以验证性和设计型等基础编程实验为主,逐步融入面向对象的特性,引导学生理解并掌握面向对象程序设计编程思想。进阶式实验是在理论教学内容完成后,采用项目式实战教学,分小组完成综合性的课程设计,学生需要以面向对象程序设计模式进行项目设计、开发、测试和发布。
实践环节过程中,学生通过“希冀”实验教学平台提交实验成果,不再提交传统的纸质实验报告,从而减轻老师对实验报告评阅的负担。老师直接通过平台的统计数据来检查学生实验的完成情况,因此可以把更多的精力放在实验的设计工作上。“希冀”实验教学平台可对学生提交的实验结果进行自动评判,学生可以根据平台的评判结果对程序进行修改,重新提交,直至平台评定结果完全正确。经过这样一个反复改进优化的过程,可以加深学生对理论知识的理解,还能提高学生的编程实践能力。同时,“希冀”实验教学平台还可以进行程序代码查重,实现对学生实践环节的监督,防止学生直接拷贝其他学生的代码,从而保证每个学生的实验完成质量。
课程考核是对教学状态和教学效果的检验。网络平台下的混合式教学中学生是主体,课程的考核方式应该多元化,考核项目应贯穿整个教学环节。本次教学改革中将课程的考核分为以下三个部分,各部分所占考核百分比根据实际情况由老师决定。
课前自主学习情况和课中分组讨论情况考核:课前自主学习情况考核由“超星”网络教学平台自动统计评分,主要从理论知识视频学习、章节测验与作业、在线互动讨论参与情况等几方面进行考核;课中分组讨论情况考核由老师根据学生在课中参与分组讨论的积极性,讨论总结发言的情况进行评分。
基础实验考核:该部分由“希冀”实验教学平台根据学生提交的实验程序代码自动完成评分。
课程设计考核:从综合项目实战开发过程、项目成果、项目答辩三个方面进行考核。项目开发过程由老师采用随机抽查的方法进行考核;项目成果包括课程设计报告、综合项目完整的程序代码及项目使用说明书,项目成果的考核由老师评阅和学生小组互评的方法完成;项目答辩时小组所有成员参与答辩,由教师和若干名学生组成评分小组,最终取平均分作为项目答辩成绩。
基于上述混合式教学改革方案,在数字媒体技术专业的面向对象程序设计课程教学过程中进行实践,该专业总共63名学生,开课学期为大二学年下学期。在课程开始前通过“超星”网络教学平台就该专业学生之前的学习课程及掌握情况进行了在线问卷调查,调查结果显示66.6%的学生认为编程很难,80%以上的学生对数据库原理、GUI程序开发、UML建模语言都没学习或了解过,63%的学生没有参加过任何综合软件项目的开发。因此,在课程教学前,学生总体上对程序设计与开发的掌握情况较差。
在“停课不停学”期间,本课程教学通过QQ群语音或视频、钉钉会议直播等方式完成,学生通过QQ和钉钉进行互动讨论和提问。对比刚开始的几次课,到学期结束时学生参与讨论和总结发言的积极性有较大的提升。
实践教学环节中,基础实验总共发布13个编程题目,包括编程题和程序片段题两种题型。“希冀”实验教学平台自动评判的统计结果显示,每个学生每个题目的平均提交次数为4.7次,通过多次反复改进,学生提交的实验结果最终正确率达95.6%。这些统计结果表明,“希冀”实验教学平台的引入能有效地提高学生的编程能力,同时帮助老师掌握学生实验完成的真实情况。
实践教学环节中,综合性课程设计项目开发分小组完成,每3人为一组,总共21个小组。小组成员可以选择老师提供的参考题目或者按要求自定义题目。小组互评和项目答辩评阅结果显示,综合项目开发的平均成绩为76.8分(满分100)。所有小组都采用了面向对象程序设计方法完成综合项目的开发,其中运用到GUI编程、数据库等扩展知识点的小组有10组,采用UML建模语言进行项目设计的有17组。从综合项目完成的最终结果看,学生基本熟悉了软件系统开发的过程,并掌握了采用面向对象程序设计方法解决实际工程问题的能力。
随着互联网技术和智能手机的快速发展,知识的传播方式和学习方式都在逐渐变化。为了更好地进行本科教学,基于网络教学平台的混合式教学模式已成为一种主要趋势。本次面向对象程序设计课程教学改革引入了“超星”网络教学平台、“学习通”手机APP和希冀实验平台作为理论和实践教学的网络平台,将混合式教学过程分为课前、课中和课后三个阶段。本文提出的混合式教学改革,不仅可利用网络教学平台为学生提供丰富的理论知识,解决学时不足的问题,还能减轻老师对课程作业和实验结果的评阅负担,让老师更专注于课程内容设计的优化,还能提高学生自主学习和参加互动讨论的积极性。