邢翠芳,李 瑛,张燕红
(海军航空工程学院 基础部,山东 烟台 264000)
摘 要:在推进院校教育“向实战聚焦、向部队靠拢”的探索实践中,以合训专业学员培养为例,说明以培养学员计算思维能力为目标的任务驱动教学模式,从增强任务的层次性、突出任务的真实性、提高任务的目标性、注重任务的启发性4方面探讨任务设计思路,通过计算机程序设计课程具体的教学活动说明实践模式的实施过程。
教育期刊网 http://www.jyqkw.com
关键词 :计算思维;任务驱动;计算机程序设计;教学模式
基金项目:海军航空工程学院基础研究基金项目(HYJC201410)。
第一作者简介:邢翠芳,女,讲师,研究方向为计算机应用与计算机教育, ytxcf205@163.com。
1 以培养计算思维为目标的任务驱动教学模式探索
在以培养学员计算思维为目标的任务驱动教学模式中,“任务”设计的理念和效果将直接影响教学效果[1]。
1.1 充分考虑个体差异,增强任务的层次性
近几年合训学员的生源主要有两类,一类是地方高中毕业生(普招),另一类是部队生(单招)。学员入学时的学习起点不同、知识水平参差不齐。普招学员文化基础扎实,计算机专业知识薄弱,起步较困难,但入门提高较快。单招学员又分两种情况:一种是大学在读期间入伍,后考入军校,计算机专业知识基础较薄弱且不系统,学习进步较慢。另外还有部分学员在初中或高中阶段入伍,考入军校时文化基础较差,计算机专业知识几乎零基础,学习进步非常缓慢。学员实际水平与学习目标高要求之间的矛盾对以培养计算思维意识为目标的教学活动提出更高要求。
教员在进行任务的选择、设计时,要充分考虑学员来源多样、起点不同、认知水平和学习需求差异大的现状,遵循“因材施教、能者多学”的原则,针对不同认知水平的学员设计分层次、有梯度的任务,供学员根据自身特点选择完成。这样可以最大限度地满足不同层次学员的学习需求,避免学员成绩两极分化和知识点的疏漏,增强学员的主体意识,激发学习热情,促进全体学员共同进步。
1.2 牢牢把握课程专业特点,突出任务的真实性
合训学员学历教育阶段的主要任务是学习基础知识,培养信息意识和思维能力,同时为任职教育阶段完成专业课程的学习打下基础[2]。军人的任职能力是循序渐进地培养出来的,是适应部队岗位任职需要的综合能力,这种能力的培养仅仅依靠最后一年的任职教育是不够的,特别是大多数合训学员入伍前学历低,缺少社会和军事活动实践,这就需要在学历教育阶段提前熟悉部队、了解基层,以便与任职教育阶段相衔接。要做到这一点,就要在基础课内容选择上尽量向部队现实需要靠拢,以学员毕业后的实践应用为出发点。
计算机程序设计是合训专业学历教育阶段的重要基础课程,在专业课程体系建设和学员知识结构建设中起支撑性作用,同时也是专业应用阶段利用专业技能解决实际问题的重要基础。该课程实践性强、极富创造性,在课时少、内容多的情况下,采用以培养计算思维为核心的任务驱动模式[3],尤其符合计算机基础课程教学的层次性和实践性;通过分析讨论、分工协作、自主探索、模仿创新、总结归纳等学习方式,摸索运用计算机技术手段进行问题求解的基本方法与规律,循序渐进地锻炼学员分析分解问题、抽象表达、独立获取及综合应用知识的计算思维能力;在课程教学中将知识点巧妙地融入任务,围绕实际“任务”展开教学,教员引导学员带着真实的“任务”进入学习情境,给学员亲切感,激发学员的学习热情。
1.3 合理选择任务难度,提高任务的目标性
运用计算思维方法解决问题是一个逐步积累的过程,计算机程序设计课程知识点多、内容丰富,课程教学应以循序渐进为原则,充分考虑学员专业素质的差异,做到有层次、有梯度的设计任务。一要注意任务的大小,单一任务包含知识点数量要适中,随着课程的推进,任务逐步加大;二要体现综合性,知识点要新老结合,温故而知新,同时提高学员对知识的综合运用能力;三要明确教学内容所涉及计算思维的内容。
任务设计要系统规划,具有较强的目标性。教员首先设计出课程总体教学目标框架树,将总目标细分成若干子目标,每个子目标根据知识点数量再细化。在框架树中,根节点是总体目标,每个叶节点对应一个包含适量知识点的子目标,每个子目标对应一个学习模块,每个学习模块的内容可以分解为多个容易掌握的小任务,每个小任务对应一个或几个知识点。小任务中的新、旧知识点可以跨章节,不同任务涵盖的知识点可以相互交叉覆盖。教员根据框架树的各级、各类目标,布置一个阶段、一个单元或一节课的学习任务,以分解任务、探索问题等方式激发学员的学习兴趣,培养学员的计算思维意识。
1.4 重点突出能力培养,注重任务的启发性
以培养计算思维为目标的任务驱动教学模式更注重运用计算机科学的方法进行求解问题和设计系统,重点突出计算思维意识和应用计算机解决实际问题能力的培养,让学员形成自主学习和应用信息技术的习惯。教员设计任务、下达任务、总结评价的过程以及学员明确任务、自主探究、完成任务的过程就是运用计算思维方法的过程。一个好的任务具有启发性,能够引导学员进行思考创新。由于学员认知水平不同,认识问题的深度必然不同,教员应启发学员用不同视角发现、分析问题,寻找完成同一任务的不同算法,激发学员计算思维的活跃度;通过对多个算法的比较,帮助学员明确运用计算思维方法的重要性,自觉培养计算思维意识。另外,鼓励学员重构问题求解过程,融入自己的思考对程序进行创新;通过重构引导学员总结同一类问题的共性和个性,启发学员寻找自身对问题理解的薄弱环节,以此锻炼学员的计算思维能力。
2 以培养计算思维为目标的任务驱动教学模式实践
2.1 教员教学活动的实施
计算机程序设计课程中,结构体和文件这两部分内容在章节安排上比较靠后,通过前期学习,学员已经能够熟练运用数组批量处理数据,使用函数实现模块化程序设计,利用指针灵活处理各种类型的数据对象。相对于之前章节的任务而言,结构体和文件章节的任务充分体现了较强的实践性和综合设计性。
1)设定目标。
课程教学目标和内容安排见表1。
2) 演示实例。
以输出本班学员基本信息为授课实例,演示结构体和文件的基本操作。要求:输入学员的基本信息(学号、姓名、队别、成绩),存入“student.dat”中并从文件中读取信息进行显示。演示结束,归纳实例中的知识点,重点强调结构体的定义和使用,简要说明文件打开、关闭、读、写4个函数的使用。
3)下达任务。
通过实例演示,学员基本熟悉新知识点,在此基础上,教员下达新任务:为某部队的军械仓库设计一个物资管理系统。其作用是对库房物资进行信息化管理,包括物资日常登记、出入库记录等,要求:物资信息以文本文件的方式进行存储和管理。物资基本信息包括物资名称、规格型号、计量单位、数量、单价、金额、出厂日期,显示输出时需显示物资的全部属性。下达任务后,教员要引导学员采用计算思维的抽象、分解方法深入剖析任务,把大任务约简、转化为小任务,通过解决各个小任务完成复杂任务。
4)督促引导。
教员引导和辅助学员循序渐进地明确学习任务,运用计算思维方法的相关概念进行知识点的构建、学习问题的思考以及问题解决思路的深入探索。对于较难理解的知识点,教员应有针对性地给予引导;简单知识点则主要由学员通过自主学习掌握。例如,“物资的显示”任务可以分解为物资结构体的定义和使用、物资显示函数的定义和调用两个子任务,教员已通过实例演示使学员理解了结构体的定义和使用,在新任务中由学员自主学习加深理解。新任务中使用结构体数组作为函数参数,教员应引导学员思考 “基本类型变量和基本类型数组分别做函数参数的区别是什么”“结构体变量和结构体数组分别做函数参数有什么区别”“结构体数组和基本类型数组分别做函数参数有什么区别”等问题,对后续算法的设计和实现起到抛砖引玉的作用。
5)总结评价。
当所有组完成任务后,教员对整个过程进行总结性评价,一是运用计算思维系列方法对整个学习过程的知识点进行概括性总结;二是对各组的完成情况、组内成员学习过程、任务实施过程中出现的问题及解决方案进行综合评价,对优秀成果进行分析讲解,学员进行自评、互评,相互共享学习资料和交流学习心得。
6)启发思考。
教员可布置课后作业,帮助学员巩固课堂知识点,加深对使用计算思维方法的理解。作业如下:①指针和数组在某种程度上可以通用,如何对现有任务进行重构,将程序中的数组换成指针,请给出解决方案;②在现有任务基础上如何实现物资按名称模糊查找并显示;③试用两种不同的排序算法对检索结果进行排序,并对两种算法进行比较。对学有余力的学员可以附加要求:如果将文本文件换成二进制文件,对其进行读写操作如何实现?
2.2 学员学习活动的实施
1)明确目标,整体规划,分解任务。
学员在明确学习目标和任务要求之后,可以小组为单位进行分析讨论,根据任务的功能描述,采用计算思维方法中分析、比较、约简、抽象、概括和分解等方法,对物资管理系统进行功能建模;按照“自顶向下、逐步细化”的原则,将整个系统的功能划分为物资的显示、新增、编辑、保存、删除、检索等模块,每个模块是一个子任务,每个子功能抽象为一个函数原型。
2)任务驱动,分工协作,探索新知。
学员分组完成不同的子任务,每组学员根据所承担的具体任务及组员的专业知识与实践能力水平,结合个人意愿进行分工,利用已有的理论知识和实践技能,运用计算思维方法探索完成任务的技术思路和实施方案。组内成员利用教材、文献及网络资源自主学习,掌握相关知识点;以基于计算思维的协作学习方式,共同分析问题,深入探究问题的本质,挖掘解决问题的关键点。所有组员互相协作,共同完成任务。
3)深入探究,完成任务,成果展示。
学员运用计算思维的抽象方法进行算法设计和基本数据结构的定义,具体的算法设计思路可以通过流程图呈现。组员相互切磋交流,深入探究算法设计思路的可行性和有效性,补充、修正、完善算法,确定算法和实施方案;最后,编写代码实现算法,通过测试调整获得正确运行的程序。任务完成后,集体展示学习成果,每组派代表讲解本组完成任务的过程和方法。
4)归纳总结,交流共享,巩固拓展。
学员首先讨论教员对任务的评价总结并消化吸收;其次进行组内互评,交流心得,共享学习资料;再以反思评价的方式对自己的整个学习过程和方法进行综合归纳,进一步加强对知识的全面掌握和计算思维能力的提升;课后通过完成教员布置的思考题加深知识点的内化和对计算思维的理解。在掌握计算思维的相关方法之后,学员可再通过已获取的知识和思维方法内化知识,自主建构属于自己的学习框架和思维方式;在其他课程的学习过程中也可以灵活运用这些方法。
3 教学实践结果
笔者将以培养学员计算思维能力为目标的任务驱动教学模式应用到计算机程序设计课程教学实践中,随机选取两个班次分别作为实验班和对照班,实践结果对比见表2。
从表2中可以看出,以培养计算思维能力为目标的任务驱动教学模式实践在各方面取得了很好的教学效果,有效提高了教学质量。
4 结 语
在推进院校教育“向实战聚焦、向部队靠拢”的探索实践中,以培养学员计算思维能力为目标,开展计算机程序设计课程任务驱动式教学,使学员不仅具备了运用计算思维方法进行问题分析和求解的能力,而且掌握了计算机方法论,有效提高了自身的综合信息素养。实践证明,这是一种成功的、有意义的教学改革尝试。
教育期刊网 http://www.jyqkw.com
参考文献:
[1] 牟琴, 谭良, 周雄峻. 基于计算思维的任务驱动式教学模式的研究[J]. 现代教育技术, 2011(21): 44-49.
[2] 陈卫卫, 张宏军. 以计算思维为切入点的兵种合训学员的计算机课程教学改革研究[J]. 工业与信息化教育, 2013(6): 47-50.
[3] 臧劲松. 培养学生计算思维的程序设计课程教学[J]. 计算机教育, 2012(2): 78-80.
(编辑:宋文婷)