赵永梅 拓明福 谢鹏 王琼
摘 要:排序算法是计算机程序设计基础这门课程的重点内容,也是难点内容之一。从以往的教学经验来看,学生在学习该课程时通常出现算法思想理解不透彻,算法转换为程序困难等问题,最终导致怕学、不学的学习态度。文中详细讨论信息化技术在教学方法、教学手段、评价体系、教学体系等方面重构与融合的方法,以实现突出重點、突破难点的目的,使学生在教学实践中发展创新思维、培养创新能力。
关键词:排序算法;课程设计;信息化技术;教学方法;程序设计;计算机教学
中图分类号:TP274文献标识码:A文章编号:2095-1302(2019)04-0-03
0 引 言
信息技术及课程的重构与融合作为深化课程改革的有效途径,正经历着从全面整合到信息技术文化中的第四个改革阶段[1]。课程信息化是信息技术文化中课程发展或者变革的过程,将信息资源、信息技术和信息方法融入到课程设计和课程实践中,是信息技术与课程融合发展的重要目标[2-3]。排序的重要性众所周知、不言而喻,排序决定了百度搜索的结果,新浪微博展示的话题,优酷推荐的电影,以及QQ对话窗弹出的横幅广告等。不仅如此,在现代化战争中,排序也举足轻重。例如,不同兵种部队通过关卡的先后顺序问题,飞机进入机场的交通管制问题,单个无人机轰炸目标顺序问题等。所以掌握好排序算法不仅是学好计算机程序设计基础课程的关键之一,更具有重要的现实意义。因此,利用动画、视频、网络课程等信息化技术,本文对这门课程中重要的知识点—排序算法的各个要素和环节经过重构、组合和相互融合,在整体上实现信息化。
1 教学分析
1.1 课程概述
计算机程序设计基础课程是我校为理工类本科一年级学生开设的一门公共基础课,是大学计算机基础教学系列中的核心课程之一,同时也是计算机及信息类专业本科生必修的一门专业基础课。它的教学目标不仅是使学生掌握基于C语言的编程能力和基本的算法设计能力,更重要的是培养学生获取信息、加工信息、处理信息的能力,并且能用自身所学知识解决生活中的实际问题,从而最终实现创新能力的培养。
1.2 教学内容
该课程计划课时为2个学时,包括1个学时理论教学和1个学时上机实践。重点讲解冒泡排序算法的思想及其编程实现,在此基础上进一步启发思维,讲解对该算法的优化,然后对比冒泡排序讲解选择排序算法的思想及其编程实现过程。
1.3 教学目标
在知识层面上,使学生掌握采用循环结构处理一维数组的方法,总结出一般规律;在能力层面上,通过冒泡排序、选择排序等算法的设计和实现,培养学生程序设计能力和计算思维能力;在素质层面上,通过算法的分析与优化,培养学生严谨准确、精益求精的科学精神。
1.4 学情分析
通过前几个章节的学习与实践,学生虽然已经具备了一定的编程和调试能力,为本节教学内容的学习提供了良好的基础,但是学生也是刚刚开始接触编程。从以往的教学经验来看,学生在学习本节内容时通常出现算法思想理解不透彻,算法转换为程序困难等问题,最终导致怕学、不学的学习态度。
2 教学设计
教学设计的目的是突出重点、突破难点,唤起学生的求知欲,激发创新内动力。显然传统的教学方法已经不能满足教学需求,将课内学习和课外探索相结合,情商培育和智商训练相结合,教师主导和学生主体相结合,改变传统的“要我学”为“我要学”。
2.1 教学资源与手段
课前准备:利用网络教材、微课、动画等形象生动的教学资源,学生可自主规划学习方案,在线学习,使学生由课前的怕学、不学的学习状态转变为主动学习。
课堂实施:将实际游戏转化为视频资源,由慢镜头分解使得递进式教学法更加具体、形象。
课后提升:教师下达任务,依托网络教材,学生可举一反三,完成从一种排序算法拓展到多种排序算法,从单一的数据处理到结构体数据处理的过渡。教学资源及手段如图1所示。
其中,网络教材由教学团队精心制作,内容主要包括网络教材、内容讲授、讲授课件、上机实践、编程训练、综合应用、学习园地和程序人生八个模块,涵盖了理论学习、实践教学、作业练习、辅导答疑、课程考核和课外拓展等各个教学环节。自制网络课程如图2所示。
在动画实施环节上,采用舞动的排序动画,使学生在课前对排序算法形成初步印象。而在课堂教学环节中,采用走动的排序动画,使学生深刻理解排序的思想。课后通过滚动的排序动画,使学生熟练掌握隐藏在数据排序背后的规律。动画实施策略如图3所示。
2.2 课堂教学方法
问题牵引的渐进式教学法是在实际教学中把案例教学法和启发式教学法结合起来提出的一种教学法。实施过程为:首先选择一个生活中的例子引入课题,激发起学生的学习兴趣。在教授过程中,通过打比方、作类比等方法使得抽象的概念具体化,复杂的算法原理简单化,并尽可能通过同一案例的不断演化,层层布设问题,引导学生积极思考,最终达到激发兴趣、启发思维、通俗易懂的效果。
2.3 上机实践教学方法
在上机实践教学环节中,将任务分级部署,分为基本任务和拓展任务两级,从而满足不同程度学生的学习需求,改变传统“一刀切、齐步走”的教学模式。
3 教学过程
学生在课前和课后利用校园网在线学习,计算机爱好者可以加入计算机软件俱乐部,更深入地学习和参加计算机学科竞赛,解决课堂学时偏少,学生“吃不饱”的问题。课堂实施混合教学和分层教学模式,实现学生“自学-互学-群学”,提高学习的主动性和积极性。
(1)创设情景,引出课题
设置游戏:让一名学生给五名学生排队,从低到高,且至少进行两次。游戏的过程中,让学生仔细观察。
然后讨论:每次排队步骤是怎样的,使用的方法是否相同。
最后教师引导:这个世界不是缺少问题,而是缺少发现,其实在每次排队的过程背后,都隐含一个经典的排序算法。
(2)问题化解,类比得出邻位比较法
将排序问题化解,先讨论如何将个子最高的队员作为队尾队员,也就是求最大值的过程。
第二次做游戏,重复排队的过程,用慢镜头动画仔细分析。
利用动画,实现计算思维的转变,达到突破。
难点一:算法思想的深刻理解,如图4所示。
(3)归纳总结,递推出排序算法
(4)布设问题,思考对算法的改进
通过动画进一步演示,引导学生发现问题,对冒泡排序从待排范围以及比较趟数方面进行优化。
(5)举一反三,通过编程实现选择排序,并比较两种算法的区别。
(6)上机实践,拓展应用
在该环节,学生根据自身学习情况,除了完成基本任务冒泡排序和选择排序,还可完成:
拓展一:其他排序算法,如快排、递归排序等。
拓展二:紧贴实战,完成单个无人机轰炸目标排序问题。
上机过程中,学生可自主混合编成小组,组内学生分工合作,研讨关键难点,教员参与讨论,引导学生规范问题解决方案。
4 教学效果与特色
以培养学生计算思维能力为目标,不断适应互联网时代知识获取手段多样化的需要,从教学体系、教学模式、教学理念、教学方法、考核方式、资源建设等各方面进行创新。
4.1 体系特色
在传统的“课堂教学+课程考试”教学体系基础上,提出“课堂教学+在线学习+综合考核+学科竞赛”四位一体的教学体系。
4.2 模式特色
改变传统“满堂灌/填鸭式”教学模式,充分利用学习资源,在教学过程中实施混合式教学、分层教学,提高学生学习的主动性、自主性,使成绩好的学生飞得更远,成绩差的学生走得扎实。
4.3 教学理念
整个教学过程中,以学生为主体,教员引导学生读中学、论中学、用中学、练中学,达到由怕学、不学到乐学、会学、善学、志学的学习态度的转变。
4.4 教法特色
通过线下学习,用“亮功夫”展示学习成果,线上通过“兴趣话题、问题游戲”等用“找金子”展示学习效果,课堂上通过打比方、作类比等方法使得抽象的概念具体化,复杂的算法原理简单化,并尽可能通过同一案例的不断演化,层层布设问题引导学生积极思考,并结合教师点评与答疑“解疑惑”,促进师生互学、群学,真正让学生成为学习的主体,培养学生独立钻研、协作探究,使他们在教学实践活动中发展创新思维,培养创新能力。
4.5 考核特色
考核由原来单一的笔试转变为“线上学习评价+学生互评+课堂研讨+课后作业+自动化机试”相结合的综合性考核。
4.6 资源特色
笔者根据多年的教学经验,制作了大量原创性的教学资源,包括讲课视频、多媒体课件、微课程、题库等,并结合知识特点精心设计多媒体资源在课堂上的呈现方式。具体应用情况见表1所列。
5 结 语
信息化技术的发展对教学手段、教学方法、教学评价体系等提出了新的更高要求。如何针对课程中的每一知识点,运用信息化技术实现传统教学的模式改革,是目前大学课堂教育研究热点之一。本文从课堂理论讲授到上机实践、从教学方法到教学手段,从课程体系到课程考核对计算机程序设计中排序算法的课程设计进行了深入、详细的阐述。通过对学生课堂表现和课后知识掌握情况的考察,发现新的教学设计,极大地提高了学生学习的兴趣,改变传统的“要我学”为“我要学”。
参 考 文 献
[1]林秀曼,张世君.课程信息化中的网络课程设计[J].现代教育技术,2008(6):62-65.
[2]柯平.信息文化论[J].晋图学刊,2003(1):1-5.
[3]钟晓流,宋述强,焦丽珍.信息化环境中基于翻转课堂理念的教学设计研究[J].开放教育研究,2013(1):58-64.
[4]余艳,蒋立兵.信息技术与教学有效融合的特征与原则:基于典型信息化教学模式的分析[J].软件导刊(教育技术),2018,17(11):79-82.
[5]赵飞燕.基于“互联网+”视域下的《电子技术基础》课程教学信息化模式应用分析[J].高教学刊,2018(22):71-73.
[6]程鸿芳,程剑,唐贤传.信息化教学大赛成果向课堂教学转化探析:新技术走进高职课堂[J].黑河学院学报,2018,9(3):95-96.
[7]杨晓宏,李鸿科,梁丽.“娱教”思维下的信息技术与新课程整合:基于“娱教”理念的信息化教学研究[J].内蒙古电大学刊,2011(5):86-89.
[8]周吉云.信息化教学设计的实践与研究:以“走进家庭网络”为例[J].读与写(教育教学刊),2019,16(2):241-242.
[9]董彦辰,姜安民,陈蓉芳,等.基于翻转课堂教学模式的信息化教学设计研究[J].考试研究,2019(1):105-110.
[10]雷静,叶煜.融入信息化教学手段的高职Java语言程序设计课程教学模式探索与实践[J].当代教育实践与教学研究,2019(1):15-16.
[11]李明,张艳华.基于绩效技术的信息化教学设计模型研究[J].电脑与信息技术,2018,26(6):48-49.