兴趣激励的VB程序设计教学探索与实践
2017-12-23宋荣杰
宋荣杰
摘要:针对VB程序设计公共课教学中存在的问题,通过采取优化教学内容、改革教学方法、改进教学手段、完善教学资源建设和考核方式等一系列教学改革措施,培养和强化学习兴趣,激发学生学习积极性和主动性,以提高程序设计课程的教学质量。
关键词:VB程序设计;学习兴趣;案例教学
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2017)49-0159-03
“程序设计基础(VB)”是西北农林科技大学面向全校农、林、理、工等众多专业开设的计算机基础课,也是许多高校非计算机专业本科生的计算机语言入门课。课程要求学生在学习VB可视化界面设计和掌握基本编程语法基础上,能够运用三种程序控制结构(顺序、选择、循环)和常用算法(统计、排序、查找等)来解决实际应用问题。课程具有较强的实践性,对于提升非计算机专业学生的计算机应用水平,提升学生综合素质和职业素养具有十分重要的意义。
随着对教学质量要求的不断提高,程序设计课程教学改革也有了较大的发展。现有研究从不同侧面对培养学生学习兴趣进行有益探索,例如,采用“倒叙教学法”[1]、引入“经典案例”[2]、使用“微信公众平台”[3]等,这些做法均取得一定成效。但由于各高校的具体情况不同,加上课程特点和教学内容不同,因此,探索研究适用性的教学方法,最大限度地激发学生的学习兴趣,仍需进行深入研究和探索。
一、教学中存在问题分析
程序设计基础(VB)课程是我校面向全校非计算机专业本科生开设的一门计算机公共必修课,包含理论教学、实验教学两个教学环节。2014版培养方案中该课程总课时为56学时。现有教学面临一些困境,集中体现在以下几个方面。
1.学生对课程重视程度不够。对于非计算机专业的学生来说,由于不清楚程序设计在专业学习和就业前景中的作用,容易对课程产生“学而无用”思想。在思想上缺乏重视,主观上没有把程序设计课程与专业课程同等对待,不愿抽出足够的时间和精力来学习。
2.教学内容枯燥、组织零散。理论教学内容主要以讲述程序设计语言的语法规范和编程方法为主,采用传统的“知识点—例题解释”方式组织;实验教学中实验内容大多来自教材中的例题和章节习题,以程序验证或算法应用为主,上机操作呆板,程序运行结果不吸引人。教学内容庞杂、抽象,缺乏与实际应用的关联和结合,导致学生对课程学习目标不明确,缺少兴趣和学习动力,在学生中间存在盲目“背语法”“背程序”等消极现象。
3.教学方法单一,缺乏有效引导和监督措施。大多采用传统讲授教学方法,辅以上机实践操作来巩固所学的知识点。学生处于被动学习地位,学习过程缺少讨论交流,实验过程以个人为主体训练,缺乏团队合作,不能有效地激发学习主动性和积极性
4.教师缺乏有效措施吸引学生关注。教学经验表明,在课程开课的前1—2周内学生的学习兴趣比较高,由于能够轻松实现一些小程序,学习成就感普遍较强。但随着课程的推进和内容的不断深入,加之枯燥的语法限制以及不断出现的编译错误,学生的学习热情逐渐下降。而教师缺少针对性地教学方法和措施,不能及時调整教学策略,导致部分学生丧失学习信心,产生厌学、弃学等消极情绪。
二、提升学习兴趣的教学策略与方法
为提高非计算机专业程序设计课程的教学质量,通过采取重视课程学习引导、优化教学内容、改革教学方法、改进教学手段、完善教学资源建设和考核方式等一系列措施,多方位培养和提升学生的学习兴趣,以提高教学效果。
(一)重视课程学习引导,激发学习兴趣
课程学习引导即教师在第一次上课时针对课程学习目标和意义、学习的内容和方法等进行引导,从而使学生对预期学习目标、学习内容等有宏观的认识。相对于传统的介绍VB开发环境使用、讲述基本概念、展示代码规范和VB程序设计流程的做法,增加课程导学环节更有利于吸引学生关注,引导学生明确和理解课程学习的目标和重要性。
教学实践中从三个不同层面进行课程学习引导,促使学生重视课程学习。首先,以计算机操作系统、常用应用软件和专业应用软件为例,引出程序设计目的和作用,以程序设计语言的发展历史和各种程序语言的应用现状,概述不同程序语言的特点和优势,使学生对课程学习目标和意义有宏观认识;其次,通过展示VB程序设计典型案例、趣味程序和往届学生优秀作品,并将如何利用本课程知识实现这些案例留下悬念,从而吸引学生关注、激发学习兴趣和好奇心,同时使学生对课程学习目标和作用有更加清晰具体的认识;最后,结合学生专业和社会就业技能需求,从通过课程考试、参加计算机等级考试、解决专业问题三方面,引导学生树立课程学习的短期目标、中期目标和最终目标,使学生对课程的重要性有更直观和明确的认识。
(二)增加教学内容的应用性,强化学习兴趣
现有教学中存在的突出问题是学生虽然掌握程序设计基础知识,但是往往不理解所学知识的作用,不能做到“学以致用”。因此,教学中突破教材章节内容限制,通过设计不同类型的“应用案例”整合优化教学内容,结合具体应用创设教学情境,并将课程知识与实际应用或专业问题相融合,从所学内容的“实用性”这一角度激发学生学习的动力,提高解决问题的能力。
一是设计趣味案例,将教学内容和学生兴趣相结合。例如,设计简化的“果蔬连连看”游戏、“扫雷”游戏案例,使学生在游戏案例的实现过程中学习掌握程序界面设计、图像框、控件数组、程序控制结构、添加背景音效等多个知识点,通过设计“游戏高手榜”功能还可将文件读写知识融合在这些案例中。此外,搜集整理一些典型的病毒程序,使学生理解计算机病毒的工作原理,增加学习的趣味性。
二是设计实用案例,将教学内容与日常生活经历相关联。例如,设计“QQ登录”、“Windows记事本”、“验证码”等案例,通过模拟网络聊天软件、计算机常用软件、网页登陆界面中的验证码等具体应用,引导学生将课程学习和实际应用结合,提升教学内容的综合性和应用性。
三是设计整理专业案例,引导学生解决专业相关问题。对非计算机专业的学生来说,程序设计对专业学习的有用性是学生普遍关注的问题。而对于教师来说,由于不了解学生所学专业的知识,在教学中引导学生解决专业问题往往是有心无力。为此,在教学中采取搜集学术文献—学生自主选题—教师指导的方式设计专业案例,即通过引导学生查阅本专业学术文献,搜集整理某一领域的计算机处理需求,再由教师指导学生设计软件、完成相应的数据处理功能。例如,指导动物医学专业的学生设计“宠物医院”软件、指导食品科学专业的学生设计“健康营养自测”软件、指导水利工程专业的学生设计“VB数据处理与AutoCAD自动绘图”软件等。通过设计与专业相关的实用小软件,引导学生利用程序设计解决专业问题,提升学生学习的成就感。
(三)采取多样化教学方法,鼓舞学习热情
传统教学方法以集中的理论讲授为主,学生往往处于被动学习地位,学习积极性不高。教师应结合不同的教学内容特点,采取灵活多样的教学策略,充分调动学生的学习积极性。
一是开展学生作品展示活动,提升学生学习的成就感。在整个教学过程中,教师及时发掘学生设计完成的创意程序或创新解题思路,鼓励学生在每节课前进行公开交流汇报,并适时进行表扬和奖励,提升学生的自信心和成就感。此外,教师还应有意识地在课程学习的前期、中期和后期,分别挑选或设计一些典型程序进行展示,引导和带动学生的学习积极性。以学生自己的优秀作品鼓舞学生,调动其学习热情。
二是开展案例教学,促进学生主动参与课堂学习。先根据教学内容特点,精心设计教学案例并组建学习小组,按照“案例导入 分组讨论 案例实现 总结与拓展”流程开展案例教学。首先,由教师提出具体问题导入案例,由每一小组各成员讨论形成每个小组对案例的分析结论和解决方案;其次,针对不同小组提供的解决方案进行对比、讨论和分析,挑选出最佳方案,然后采取分步接龙的方式由学生完成案例;最后,教师对案例的实现思路和关键技术进行总结,并提出拓展型问题,启发学生思考。在整个案例教学过程中,学生由被动听课变为主动学习,每位学生都有参与案例研究、分析、讨论和交流的机会,因而能够充分调动学生的学习积极性和求知欲,促使学生全面参与课堂教学。
三是借助移动教学平台,增加教学活动的趣味性。通过蓝墨云班课平台,一方面可将教学课件、教学视频、拓展案例等教学资源推送到手机移动端,便于学生随时、便捷访问,增加学习过程的趣味性;另一方面,借助移动教学平台开展课堂签到、问卷调查、课堂测试、分组作业等教学活动,有利于增加师生互动交流,促进师生及时双向反馈,稳定学生学习兴趣。
(四)完善教学资源建设,保障学习兴趣
为解决学生课外学习缺少针对性的学习资源的问题,综合考虑每个学生个体在知识结构、个人能力以及差异教学需要,从学习视频、案例指导、拓展资源等三方面进行教学资源建设,为学生自主学习提供多方位的理论或技术指导,解答学习中遇到的困惑。
一是针对重难点内容录制微视频,便于学生反复观看学习。通过运用微课设计及制作技术,借助于音频、视频、动画等多媒体元素,把教学中的重点、难点内容以及典型案例分析与实现过程,以浅显易懂的方式呈现,形成简短精炼的微课教学视频,发布到教学网站和移动教学平台上,便于学生随时访问、反复观看。
二是编写以案例为单元的实验指导,为学生上机实践提供指导。相对来说,案例具有一定的综合性和实现难度,为了保证不同能力层次的学生都能完成案例,针对每个案例撰写详细的实验指导,提供案例背景、内容、任务、预期结果、相关知识等要素,一些复杂的案例还提供解题思路、关键技术,甚至实现源代码,帮助学生理解并顺利完成实验。
三是提供综合性拓展案例,開拓学生思路和视野。在现有趣味案例、实用教学案例基础上,设计一些综合型更强、更贴近实际应用的拓展案例,例如,VB多媒体编程、数据库编程、网络编程等综合案例。由于课时所限,这些案例中涉及到的知识,如数据库、网络编程等并未在课堂上讲授,因此直接向学生提供案例完整的可执行程序,学生下载后可直接运行、查看源代码,感兴趣的学生可以在理解这些案例的基础上,模仿设计自己的程序。通过这些拓展案例,开阔程序设计的思路和视野,启发学生在更高层次上做到学以致用。
(五)开展多元考核评价机制,稳定学习兴趣
一是鼓励课堂参与,加大过程考核力度。对于积极参与课堂学习,如主动回答问题、积极展示程序、在论坛或QQ群热心解答其他学生问题的学生,给予相应的奖励,作为平时考核的重要依据,提升学生课堂参与热情。
二是定期开展课堂测试,及时获取教学反馈。针对教学中的重点、难点内容,在教材每一章学完后进行章节测试,让师生共同了解每一章内容的学习效果,以便开展针对性辅导和练习。此外,在课程学习的中期和后期举行期中测试和期末测试。在测试形式和手段上,客观题采用蓝墨云班课平台,学生交卷即可查看成绩和答案;程序设计测试则采取纸质测试的方式,让学生手写程序。通过章节测试、期中测试和期末测试等形式,便于学生进行阶段性学习总结和反思,有针对性地调整学习策略,在客观上推动学生在整个课程学习期间的学习积极性。
三是开展程序免试答辩,鼓励学生进行创新。除了集中式的期末上机考试方式,鼓励学生进行实践创新,通过制作实用小软件取得课程成绩。在课程学习后期,由学生根据学习内容,结合专业需求或某一应用需求,设计制作一个相对综合、具有一定实用性的创意小软件,并进行集中答辩,由5名以上教师评委根据程序实用性、功能、创新性、技术难度等方面进行打分,答辩成绩可作为考试成绩,未通过或对成绩不满意的学生仍可参加上机考试取得课程成绩。实践表明,免试答辩举措能极大调动学生学习热情,达到强化实践能力考核、鼓励创新的目的。
三、教学改革实践效果
从2014年开始,针对我校部分专业的学生实施兴趣激励的教学改革与探索,通过重视学习引导、优化教学内容、采取灵活多样的教学方法、完善教学资源建设、推行多元考核评价机制等一系列教学改革措施,有效激发和培养了学生的学习兴趣,取得良好的教学效果,具体表现为:一是在课堂表现方面,学生课堂参与度明显提升,课堂气氛更加活跃,充分调动了学生的学习积极性;二是从课程后期对学生的问卷调查结果来看,90%以上的学生对提供的教学案例很感兴趣并愿意通过努力去完成这些案例,99%的学生认为课程学习对于提升计算机应用水平以及解决专业问题很有帮助;三是从考试结果来看,改革后的学生课程考核通过率相对之前有较大幅度的提升;四是从学生实践能力培养效果来看,学生编程能力有明显提升,分析和解决实际应用问题的能力明显增强。
参考文献:
[1]栾好利,杨政.基于兴趣的“程序设计基础”课程教学策略的研究与实践[J].计算机教育,2008,(2):78-81.
[2]崔冬霞.VB课程如何吸引学生兴趣的教学方法探讨[J].成都师范学院学报,2016,32(9):121-124.
[3]李霞,滕欣欣.微信公众平台在程序设计类课程中的应用模式探究[J].山东广播电视大学学报,2017,(2):33-36.