王莉丽
(河南工业贸易职业学院,河南郑州 451191)
高职院校计算机专业培养的人才,主要面向社会各行各业的IT类一线岗位。在“互联网+”、大数据、人工智能等新技术带来的行业快速发展的同时,对一线技术人才的需求也逐年增加,这也要求高职院校培养的人才具备专业基础扎实、适应行业发展要求的综合能力。
其中语言类课程是高职院校的专业基础课,是高职学生必须要掌握的专业技能,熟练掌握编程语言,可以为以后的就业打好牢固基础。因此,语言类课程的教学模式探讨非常重要。
高职院校计算机专业培养方案中,语言类课程设置基本相同。一般先学习C语言,再学习Java,不同的专业方向还会学习Python。这三种编程语言有其自身的特点和适用范围。C语言是一种面向过程的语言,它是底层语言的代表,掌握C语言是成为系统工程师和架构师的基础;Java语言属于面向对象的语言,它的应用范围最广,手机App、云计算、大数据等,都离不开Java,所以行业内面向Java开发的岗位也更多一些;Python主要应用在人工智能、大数据等新技术领域。
目前针对语言类课程典型的教学模式有下面几种方式,具体院校采用哪种方式主要取决于硬件环境。
(1)理论讲授和代码演示模式:这种方式适用于多媒体教室教学,主要形式是教师讲解和演示为主,缺点是课堂上学生没有实践的机会。
(2)讲练结合的机房教学模式[1]:这种方式适用于传统机房教学。教师讲解并演示,学生可以直接动手练习,学习效果比多媒体教室方式好。缺点是学生机与教师机无法相连,教师的演示操作不能直观地传递给学生;再加上高职院校的学情不同,学生的学习能力差别很大,课堂的实践内容无法统一到所有的学生类别。
(3)C/S架构的机房教学模式[1]:
这种方式适用于现代化的机房教学,教师机与学生机通过内网连接,可以实现教师机对学生机的控制。教师的讲解和演示可以直接投射到学生机,学生能直观看到所学内容;并且教师机可监测学生机的屏幕内容,实时掌握每位学生的学习情况,有更多的互动教学方式,也方便督促学生的学习情况;缺点是仍不能较好解决学情差异问题。
除此之外,对此类课程的教学模式探索主要集中在项目教学方式[2]、案例驱动方式[3]以及受疫情影响,探讨比较多的线上线下混合式教学方式[4]和“互联网+”教学方式[5]。这些研究方向侧重于学生的兴趣点开发、实践能力的提高,但对于高职学生学情差异问题,如何实现分层次分类教学的问题没有很好地得到解决。
在以上研究基础上,文中提出一种自反馈式的分类教学模式,通过各类学生完成情况的不同,自主反馈形成分层次分类教学。
该模式主要集中在如何发挥学生的主观能动性,让学生从被动学习转化为主动学习,通过自反馈的方式让学生实现学生角色与教师角色的翻转,从而实现分层次分类教学模式。本文从实践出发,在实践环节设计小组督导的学生角色,让学生每次课程任务中,都能参与到主动解决问题的层面,从而照顾到不同层次学生的培养。
该模式以机房教学方式为基础,在进行实践环节任务时,不同层次的学生完成情况不同,层次好的学生会早早完成而无所事事,一般的学生可能整节课都无法完成实践任务。老的方法是让层次好的学生做好预复习,而教师主要辅导没有完成任务的学生,没有达到一个好的分类教学。针对这种情况,可设计小组督导角色,让先完成任务的学生自主报名作为小组督导,为进度慢的学生调试和排错,而教师作为辅助,从而锻炼优秀学生调试纠错的实践能力;并且通过多个小组督导学生的辅助,可快速帮助进度慢的学生完成实践任务,保证每个学生都能按时完成课堂实践内容;另一方面有了小组督导的帮助,减轻了教师课堂辅导和检查的压力,教师可以更好地设计新的实践任务,形成一个良性的循环。
该教学模式重点在于对不同进度学生的锻炼有所区分。进度慢的学生在调试程序时会产生各种各样的问题,让程度好的学生作为小组督导,锻炼其熟悉常见系统报错信息并掌握纠错方法,进一步提高编程能力。下面以章节三中的创建Person类为例子,列举几个常见错误对应的报错信息。
创建Person类的代码如图1所示:
图1 创建Persono类实例代码
实践过程中,常见错误信息如下:
(1)关键字拼错:不同位置的关键字报错信息略有不同,比较常见的关键字报错会提示“Syntax error”,如图2所示:
图2 关键字拼错信息
(2)main方法格式写错:Java代码中main方法的格式是固定的,main格式拼写错误是刚学习Java时最常见的低级错误,报错信息如图3所示:
图3 main方法格式错误信息
(3)同一文件中有多个pulbic类:这是Java编程最基本的特点,一个源文件中只能有一个public类,当出现多个public类时系统报错信息如图4所示:
图4 单文件中有多个public类报错信息
(4)数据赋值类型不匹配。本例中有String和int两种类型的参数传递,String类型数据不匹配报错信息如图5所示,int类型数据不匹配报错信息如图6所示:
图5 String类型赋值不匹配错误信息
图6 int类型赋值不匹配错误信息
除此之外,实际的报错情况会更多,学生在编写、调试代码时,会出现各种各样的问题,大部分都是低级错误,当小组督导学生熟悉各类系统报错信息后,可以很快解决这些问题。在以后的教学过程中,可以鼓励小组督导学生将典型的报错信息整合起来,建立“错误信息库”,提高调试排错的能力。通过纠错训练,锻炼了优秀学生编程过程中不怕出错,能看懂错误信息,会分析错误原因并改正,从而提高编程能力;而进度慢的学生被带领着调试代码正确,看懂程序运行结果,按时完成教学计划,达到基本教学要求,从而实现了分层次的教学培养。
推进该模式的另一重点在于优秀学生的自主反馈报名,以此增加小组督导的人数,达到更快速推动实践任务的完成度。为了激励学生,提高优秀学生的参与度,可调整课程期末考核的方式,把参与小组督导的情况记录到总成绩的考核中来。课程考核的方式一般是:平时成绩占40%+期末考试成绩占60%,其中平时成绩一般由两部分组成:作业20%+考勤20%。改进后的考核方式平时成绩可划分为三部分:作业20%+考勤10%+课堂参与度10%,这里的课堂参与度即是参与小组督导的记录,可根据班级情况适当调整评分比例。
在自反馈式分类教学过程中,增加了小组督导,教师对于课堂教学任务的设置灵活度更高,实践内容也可相应增加。根据教学经验,课程任务的设计可参考表1。
表1 Java课程章节任务设置
章节内容参考胡伏湘主编的教材《Java程序设计基础》。
本文针对高职计算机语言类课程的教学模式和方法进行了相关研究,对于如何提高学生的学习兴趣,以及如何对于层次不同的学生展开分类教学提出了一种自反馈式的分类教学模式,在实践环节设计小组督导的学生角色,鼓励优秀学生参与小组督导,帮助层次低的学生调试、排错,从而对于不同层次的学生展开分类的教学培养。在以后的教学过程中,鼓励小组督导学生搜集错误信息,形成课程实践“错误信息库”,是一个研究的方向;还有调动学生的积极性,提高学生的学习动力,也需要不断研究和探讨。