APP下载

基于计算思维的案例-项目驱动教学模式研究

2014-10-13

长治学院学报 2014年2期
关键词:程序设计驱动案例

李 丽

(太原工业学院 计算机工程系,山西 太原 030008)

1 引言

计算机程序设计课程是计算机专业学生的必修课和基础课,教学是高校培养大学生综合素质和创新能力不可或缺的重要组成部分。目前,该类课程大都采用传统的教学方法,即“语言基础理论讲授+例题解析+完成作业小程序”的模式。上述教学方法虽能保证知识的系统性,但同时也因脱离实际和应用、知识枯燥、学生学习没有很高的积极性,导致教学效果差。既缺乏相应的计算机技能,也缺乏相应的计算机思维。

2 计算思维

2006年,美国卡内基·梅隆大学的计算机科学系主任周以真教授就曾指出:计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[1]。周以真教授认为,计算思维就是通过嵌入、转化、约简和仿真等方法,把一个看着困难的问题重新翻译成一个我们可以想办法解决的问题;计算思维是一种递归思维;计算思维是关注的分离(SOC方法),它采用抽象和分解,以满足庞大复杂的任务或复杂系统的设计;计算思维是基于预防、通过冗余、保护、纠错和容错的方法来恢复最坏情况的一种思维;计算思维是使用启发式推理确定答案,是在不确定的条件下来规划、学习和调度。它不是提倡我们像计算机一样去考虑问题,而是让我们使用计算机解决问题的基本方法去解决问题。信息化社会要求计算思维成为每个人都拥有的基本技能,如同掌握阅读、写作和计算一样,不仅仅是计算机科学家的专利。

2010年我国“九校联盟(C9)计算机基础教学发展战略联合声明”中强调的核心要点是“需要把培养学生的‘计算思维’能力作为计算机基础教学的核心任务”[2]。程序设计课程的教学目标就是使的程序设计课程的基本知识、基本方法、基本算法和结构化程序设计让学生能够掌握,培养学生使用计算机处理问题的能力、意识和方法,并且能够掌握用计算机处理问题的基本技能,灵活机动的使用程序设计语言和相关的专业知识来设计程序。

3 案例-项目驱动教学法

案例教学法是指将理论与实际相联系,从而提高学生分析问题和解决实际问题的能力的一种教学方法。

项目驱动教学法是实施探究式教学模式的一种教学方法,是建立在建构主义教学理论基础上的方法。这种教学方法主张选取一个或多个具有实际应用价值的代表性项目给学生,学生在项目驱动下,自主协作尝试探索,找到完成项目的方法,通过项目的实现来完成知识的建构。这是一种以学生为主体、教师为主导、以项目为驱动的教学方法[3-4]。

案例-项目驱动教学法是将案例教学与项目驱动教学相结合的一种教学方法。案例教学侧重于“教”,指教师在授课的过程中以事先设计好的典型案例为基础;而项目驱动侧重于“学”,指学生在学习的过程中以项目为驱动,以解决问题为目标,在解决问题的过程中学习。

4 以计算思维为基础的案例-项目驱动教学

案例-项目驱动教学着重培养学生程序设计的思维方法或过程,这种方法的主要特点是“观察-联想-变换”。即通过对项目模块的需求分析,通过对项目要解决的问题进行认识和理解;然后通过联想,寻找已有的程序设计相关知识和要解决的问题之间的联系;最后经过转换,把这个相对复杂的问题转化成另一个或几个相对容易用程序设计语言表达并实现的方式,这个过程实际上就是一个抽象和自动化的计算思维的过程。在独立解决问题的过程中,学生会体会到学习的乐趣,感受程序设计的美、计算的美。

图1 案例-项目驱动教学法流程

4.1 设计案例、项目选题阶段

教学案例和项目设计的好坏直接影响着教学效果,首先,教师要以教学大纲为基础,主要面向知识重点和教学目的,从计算思维方面重新构建经典案例。教师在项目选题时,还要充分考虑学生知识结构和心理特点,对一些操作性强、与现实相关或与专业相关的情境项目进行创设,引发学生对项目的兴趣,激发学生的求知欲。其次,考虑到学生能力水平各不相同,教师在项目选题时,还应具有层次性。层次分明的项目既可以发展学生的共性,又可以培养学生的个性。另外,在具体的项目实施过程中,也可以充分发挥学生的能动性和创造性,让学生结合兴趣和专业特点自行设计项目,这对学生计算思维能力的培养也是非常有效的。

总的来说,笔者认为教学案例的选择要偏重经典,知识点的覆盖,兼顾趣味性;而项目的选择则应偏重应用,讲究生活化、趣味性。比如VB程序设计中,在介绍分支语句的嵌套时,我们可以选取大家都比较熟悉和感兴趣的简易QQ登陆界面作为教学案例。而项目上可以提供:学生信息管理系统的登陆界面、学生在线考试系统的登陆界面、模拟某某游戏登陆界面或模拟淘宝旺旺登陆界面等。

4.2 案例教学阶段

对项目具体实施的解释和对新知识的讲解是案例教学的主要任务。在具体的教学过程中,讲解新知识要简洁明了,紧扣重点,避免重复,不需要面面俱到。把教学的重点放在讲思路、分析问题和对问题域的抽象上,对语法细节和算法实现不需要过多强调,给学生留下更多的时间去思考和讨论,给学生足够的自由发挥和创造的空间。这样有利于培养学生的自学能力和计算思维能力,避免因为程序语言学习的枯燥、语法规则的繁琐,而使学生失去学习的兴趣。

为达到好的教学效果,案例教学过程中,非常有必要的一点是采用多种多样的教学手段来调动学生学习的积极性。比如在介绍循环结构求最大值算法时,可通过“聪明的王妃”的故事引入和讲解,从而激发学生从生活中发现知识,应用知识的热情等等。

4.3 项目实施阶段

项目实施是整个教学过程中最重要的部分。在这一阶段,学生是主体,教师是主导。如图1所示,学生在这一阶段要大致经历选题、学习制作和阶段小结三个过程。选题后,学生分析项目,明确项目需要完成的任务;制定项目完成过程中所需要的步骤和学习计划,并在完成项目的驱动下,进入“学中作,作中学”的阶段;在项目制作的过程中,还要注意阶段小结,及时总结存在的困难,随时修改学习计划,控制项目的制作朝着正确的方向发展。当然,在学生为主体的项目制作过程中,教师要充分扮演好主导者的角色,以强化学生计算思维为目标展开教学。比如,在选题阶段,注意引导学生搞清楚自己要完成的任务是什么;在学生学习制作项目阶段,可以适时的提供一些“支架性”的学习资源,防止学生进入漫无目的的“试误”状态;在阶段小结中,对学生遇到的问题进行点拨式的指导。

项目实施过程中应注意几点[6]:(1)倡导算法多样化,注重培养学生的问题求解能力、探索精神和创新意识。在教学过程中,要充分尊重学生的个体差异,鼓励学生用不同方式表达算法,从不同角度认识问题,对问题求解可以采用不同的方法实现。(2)多鼓励学生克服困难完成项目。(3)教师的指导要把握“度”。实践证明非正面、非全面的“点拨式”指导不但能加深学生的记忆,还能激发学生的思维,对学生创新能力的培养有很好的作用。

4.4 项目评价阶段

最后,学生以成果展示的形式进行项目汇报,师生共同对学生完成的作品进行评价。教师有针对性的评价,可以有效的促进学生反思内省,积极思考存在问题的本质和解决方法的改进,通过自我梳理达到构建知识体系,从而使学生的创新精神和计算思维能力得到进一步锻炼。除此之外,项目总结也很重要。教师对多种程序设计实现方法的总结和对相关知识点的归纳,可以有效的促进学生对项目实施全过程的清晰、整体认识。

[1]牟琴,谭良.基于计算思维的探究教学模式研究[J].中国远程教育,2010,(11):40-45.

[2]黄静等.基于计算思维的程序设计课程教学模式研究[J].中国远程教育,2013,(5):51-54.

[3]赵立英等.任务驱动式案例教学法在VB程序设计教学中的应用[J].科技创新导报,2012,(35):144.

[4]郭春平.案例及任务驱动法在VB程序设计教学中的应用[J].齐齐哈尔师范高等专科学校学报,2010,(4):130-131.

[5]吴文虎,王建德.世界大学生程序设计竞赛(ACM/ICPC)高级教程(第一册)程序设计中常用的计算思维方式[M].北京:中国铁道出版社,2009.

[6]侯薇.基于项目驱动的程序设计基础课程的计算思维培养[J].吉林省教育学院学报,2012,28(4):148-150.

猜你喜欢

程序设计驱动案例
基于模糊PI控制的驱动防滑仿真系统分析
案例4 奔跑吧,少年!
屈宏斌:未来五年,双轮驱动,砥砺前行
基于Visual Studio Code的C语言程序设计实践教学探索
轨旁ATC系统门控柜接收/驱动板改造
随机变量分布及统计案例拔高卷
从细节入手,谈PLC程序设计技巧
发生在你我身边的那些治超案例
高职高专院校C语言程序设计教学改革探索
基于S3C6410的Wi-Fi驱动移植实现