高职基础性程序设计课程教学方法探析

时间:2022-10-22 08:49:07

高职基础性程序设计课程教学方法探析

摘要:指出了在高职基础性程序设计课程教学中存在的问题,提出了适用于课程教学的若干可行方法,最后指出了在实施上述方法的过程中需要进一步关注的问题。

关键词:高职;程序设计课程;教学方法

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)22-5280-03

在高职院校计算机相关专业,基础性的程序设计课程(如C语言程序设计、Java程序设计、C#程序设计)均是各专业的专业核心课程,而且往往在大学一年级开设,在专业课程体系中有着大量的后续课程。这类课程的教学效果,直接影响着学生后续课程的学习效果和专业核心能力的养成,因而在专业课程体系中占据着十分重要的位置。该文结合该类课程教学中目前存在的问题,提出了若干有益的教学方法,以期提升高职计算机专业基础性程序设计课程的教学实效。

1 课程教学目前存在的问题

在高职计算机专业基础性程序设计课程教学中,目前存在着诸多问题,主要包括:

1) 学生学习兴趣不高,学习积极性欠缺

绝大多数学生在课程学习之初怀有良好的学习愿望,学习态度也较端正。但基础性的程序设计类课程往往在大一上学期或下学期开设,大多数学生之前没有任何编程基础,突然接触这一类课程较难进入角色,表现为老师讲的内容大多数听不懂,或者即使勉强能听懂,但自己不会编程序。因而随着时间的推移,部分学生会因为难以体会到成就感而渐失学习兴趣,甚至有部分学生会从内心深处放弃该类课程的学习。

2) 学生被动接受知识,编程能力严重不足

高职计算机专业的编程类课程与学生在高中阶段学习的数学、物理等课程在学习方法、能力要求等方面有很大不同,主要区别在于,编程类课程的学习过程中,如果学生只是被动地接受老师讲授的知识和方法,不能转化为自己的编程能力,则并没有达到该类课程的核心能力要求。

然而,现实情况正是如此,在学完编程类的课程后,具有相当强的编程能力的学生少之又少。

3) 课程考核方式不合理

大学阶段,课程考核的意义不仅在于评测学生的课程学习水平,它的意义更在于作为一种有效的全程约束和激励学生的机制,促使学生在学习该课程的整个过程中全力投入、学有所得。

然而,出于保证及格率等方面的原因,现有的考核方式降低了对学生的要求,更倾向于通过期末考试来一次性评测学生的课程学习水平,难以成为全程约束和激励学生的机制。

2 高职计算机专业基础性程序设计课程教学中的若干可行方法

为解决课程教学中出现的上述问题,需要教师花大气力,在教学模式、教学方法上进行调整。除采用大家熟知的项目驱动、案例式等教学模式外,结合自己的教学实践和思考,笔者认为,在课程教学中综合使用以下一些方法或举措是有效的。

2.1分层次教学

在教学实践中,很多教师曾遇到过这样的困境,无论教师在备课和授课上花多大气力,教学效果都不够好,突出表现为愿意听课和按要求做实验的学生不多。这其中的原因在哪里呢?实际上,教师并没有站在学生的立场上来评判授课效果。事实上,相当一部分学生可能会觉得教师授课内容过于难懂,还会有一部分学生可能会觉得授课内容重点不突出或过于简单。如何解决这一问题呢?在教学过程中注重因材施教,对学生实施分层次教学是一个可行的办法。

高职学生与本科学生的差别主要体现在以下两方面:一、从总体来说,高职学生的认知水平、学习能力稍弱;二、高职学生生源种类多,因而学生的学习能力、兴趣、个性等差别很大。基于这两点,对高职学生实施分层次教学是十分必要的。

分层次教学是根据学生不同基础、不同学习需求而实施教学的一种教学手段[1]。在实施分层次教学时,针对高职学生的特点,应把握理论和实践教学内容的总体难度均不宜太高,这样才能让大多数学生学有所获,进而有坚持学下去的动力。教师授课切忌完全按自己的意志决定授课内容和进度,在授课和学生上机实践过程中,应注意和学生交互,把握学生的接受程度及想法意见等,进而在授课计划大框架不变的前提下,及时地、灵活地调整授课内容及进度。同时,考虑到部分学生的学习能力较强,教师在准备教学内容时应有少量难度较大的知识及技能点。对于难度较大的知识点,教师在课件中详细阐述,在授课过程中仅作少量提示,供学有余力的学生课余自学。对于难度较大的技能点,教师可将其列在实验任务书中,供学生选做。

此外,针对特定课程,在校内成立俱乐部、兴趣小组、协会、工作室等组织,让学有余力的学生有发挥特长、协作提高的机会,也是实施分层次教学的重要补充。

2.2 采用翻转课堂教学模式

考虑基础性程序设计课程在计算机专业课程体系中的重要性,而课程教学学时相当有限,为有效延长课程教学及学生学习时间,更为了提升学生的自主学习能力,在教学中适当地引入翻转课堂(the Flipped Classroom)的教学模式是必要的。

翻转课堂教学模式最早于2007年出现在美国科罗拉多州落基山的“林地公园”高中[2],在2011年,萨尔曼・可汗正式在TED 大会上将翻转课堂作为一种全新的教学模式介绍给全球的教育工作者。近几年,全球越来越多的学校尝试使用翻转课堂教学模式并从中获益。

对于翻转课堂的界定不尽一致,国内学者张金磊指出,判断一堂课翻转成功的标准是,学生在课前的学习情况达到了传统课堂中教师讲授的效果和课堂中学生完成了本次课程内容的内化[3]。

虽然从目前来看, 翻转课堂教学模式的实施主要集中于中小学,针对的教学科目主要为数学、化学等理科课程。但无论从技术条件还是学科特点来看,翻转课堂应用于高职基础性程序设计课程的教学是可行的。当然,也应考虑到,翻转课堂应用于高职基础性程序设计课程的教学没有太多先例可以参照,课前、课中的教学细节需要教师自行设计,对教师各方面的能力要求是较高的,若教师缺乏这方面经验和能力,极有可能达不到既定的目标,弄巧成拙。因此,教师可以先不急于在整个学期的教学中全盘推行翻转课堂的教学模式,而是在小范围,如某一章或某几章尝试翻转课堂模式,如果效果良好则可逐步扩大应用范围。

尽管基础性程序设计课程的纸质及网络教学资源丰富,但为了实现特定的教学目标,教师应以课程网站为翻转课堂的主要技术平台,这个课程网站应当是课程组教师以课程标准为准绳自行创建的。实际上,利用课程网站辅助教学在各类大学早已十分普遍,但为了能成功实现教学的“翻转”,必须在提升课程网站的质量方面下功夫,课程网站的质量主要取决于两方面:

其一、是否有足够多的高质量的视频及其他各类学习资源支持学生的自主学习及协作学习,一般说来,一个教学单元可对应几个视频,考虑到程序设计类课程的特点,每个视频时长可在25分钟左右。

其二、是否有足够的约束和激励机制促使学生能自觉自愿地利用课程网站进行学习。教师采用的约束和激励机制可以包括:

1) 对学生进入课程网站学习的时间长度进行统计,计入学生的平时成绩。

2) 有明确而有趣味的任务(主要是编程任务)引导学生在网站上利用视频等资源进行学习后完成任务,并对学生完成相应任务的情况进行评测。每个教学单元对应的任务涵盖了教师的教学目标,但该任务是通过学生自主学习之后自行完成的,避开了教师枯燥的说教或演示,提高了学生分析和解决问题的能力。

3) 课程网站中有针对每个教学单元的测试题,学生利用网站上的视频等资源学习完某个教学单元后自行进行测试,并将答案发送给老师供其批阅。

此外,在翻转课堂模式下,课堂教学活动必然与传统的课堂教学大不一样。教师在课堂教学中应完成如下几个目标:

1) 针对一个教学单元,通过提问或上机测试等方式把握学生个体的学习情况,以便于针对学生的具体情况有的放矢地开展课堂教学活动。当然,为提高课堂效率,这一过程应在课前就开始了,如教师可在课前查看学生的网上测试情况,或搜集学生在网上的提问,大致了解学生学习情况,拟定课堂教学活动的具体计划。

2) 针对一个教学单元,通过重要知识点串讲、教师分别辅导、学生团队协作等方式实现教学内容的内化,尽可能让每一位学生都实现课堂收益最大化。在此过程中,应以课程网站中针对每个教学单元布置的任务为主线开展教学,也就是说,判断教学内容的内化的重要标准应是学生对老师在课程网站中布置的任务能够完成,并能理解其涵盖的知识点。换句话说,即学生已通过课前自主学习和课堂教学活动,将教学内容转化为了自己的实践能力。考虑到基础性程序设计课程的特点,课堂教学活动最好在一体化教室进行。

2.3 注重学习方法的引导

不论采用分层次教学,还是翻转课堂教学模式,在学生学习基础性程序设计课程过程中,学生的心理因素均是影响学习效果的主导因素。相对于高中课程,高职程序设计类课程在学习方法上的要求大不相同,使得许多学生很难快速地适应;同时,相对于本科生,高职学生自我约束、自我激励的能力稍弱,在学习过程中,如果遇到了较多的问题不能及时解决,便很容易产生消极心理,从而放弃课程的学习。因此,在教学过程中,教师应特别注重观察学生的心理状况,对学生进行合理的、及时的引导。

高职学生均已成年,针对其心理方面的单纯的说教并无太大意义,而在学习方法上引导学生可能是解决其心理问题的一个可行方法。

比如有些学生在学习过程中对每个知识细节都不放过,因而很容易因为有些障碍跨不过去而产生挫败感。教师应告诉学生,在刚开始学习程序设计课程时,不一定要每个细节都弄懂,在一定意义上,少即是多。如果过分关注每一个细节,势必会给自己的学习之路设置很多障碍,导致学习无法进展下去。学生只需把握老师要求的重点即可,随着学习的推进,很多问题以后自然而然就会得到解决。

又比如,在上机编程时,常有学生抱怨,老师讲的我能听懂,可就是不会自己编程序。在这一方面,教师可向学生传授一些方法,引导学生将所学的知识转化为自己的编程能力。比如,在学习C语言时,教师可这样引导学生:看别人的程序相当于是看一幢幢用积木搭好的房子,虽然每个房子不同,但使用的积木却无非是那么几种,如顺序结构、选择结构、循环结构、以及各类数据结构等。与其说我们在看别人搭的房子,不如说我们在学习若干常用积木的使用方法。熟悉到一定程度,自己根据需求选用适当的积木搭一个简单的房子就不难了。

2.4 转变课程考核方式

如前所述,基础性程序设计课程考核的意义主要在于建立一种有效的全程约束和激励学生学习的机制,而且这种学习中自主学习应占到相当大的比重。为达到这一目标,可对目前的课程考核方式作如下改变:

1) 平时成绩在课程考核中的比重应增大。平时成绩主要取决于:在课程网站的学习情况(需要诸多的评测机制支撑,如对学生进入课程网站学习的时间长度进行统计,对学生在课程网站进行自测的情况进行评测,对学生完成课程网站中某一教学单元对应任务的情况进行评测等),课堂考勤情况,课堂参与度,团队协作情况,作业及实验报告提交情况,等等。建议平时成绩占课程总评成绩的50%左右。

2) 期末考核方式也应做较大调整。考虑到程序设计课程是实践性极强的课程,期末考核可由上机考试和笔试两部分构成,建议这两种考试都采用开卷的形式,允许学生带教材、笔记本等资料,但试题难度应较原先闭卷方式下有所增加,以真实地评测学生的课程学习水平。

3 结束语

高职计算机专业基础性程序设计课程在专业课程体系中的重要性是不言而喻的,该类课程的教学也一直是高职计算机相关专业教学的难点,我们在这类课程教学中,采用以上方法,进行了有益的尝试,收到了较好的效果。但仍有一些问题值得持续关注并巧妙解决,如在翻转课堂模式中,课堂教学活动如何能在按教学目标有序推进和根据学生情况灵活调整间取得平衡,又如对学生在课程网站的学习情况进行评测如何做到客观有效等。

参考文献:

[1] 袁淑玲,徐连孝,李臻,等.分层次教学与案例教学在高职《C语言程序设计》中的有效结合[J].硅谷,2010(21)154,105 .

[2] 张金磊,王颖,张宝辉.翻转课堂教学模式研究[J].远程教育杂志,2012(4):46-51.

[3] 张金磊.“翻转课堂”教学模式的关键因素探析[J].中国远程教育,2013(10):59-64.

上一篇:基于Kinect骨骼信息和改进重心距离法的指尖识... 下一篇:数据结构课程教学方法探讨与实践