基于计算思维培养的程序设计基础教学
2014-07-28胡平霞龚静
胡平霞 龚静
摘要:从计算思维概念出发分析计算思维,提出计算思维能力培养;指出高校程序设计基础课程中计算思维能力培养现状和不足;最后提出基于计算思维能力培养的程序设计课程教学方式。
关键词:计算思维;程序设计基础;算法;项目教学法
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)17-4074-02
Program Design Teaching based on Computational Thinking
HU Ping-xia, GONG Jing
(Hunan Polytechnic of Environment and Biology College Computer Department,Hengyang 421005, China)
Abstract: Starting from the concept of Computational Thinking, analyzes Computational Thinking and proposes to cultivate Computational Thinking ability; Points out the current situation and deficiency in cultivating of Computational Thinking ability at program design teaching; Finally puts forward the teaching methods of program design course based on Computational Thinking ability.
Key words: Computational Thinking; program design basis; algorithm; the project teaching method
1 计算思维
计算思维(Computational Thinking , CT)是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列的思维活动[1]。计算思维是一种思维方式,它不是计算机科学家的专属,而是每个人都要具备的基本能力。
1.1 计算思维意识
计算思维不是新的思维,和理论思维、实验思维一样是属于人的三大思维。在程序设计课程教学中,无意识的计算思维培养处处存在。问题的关键是要将这种无意识计算思维变成有意识、有目的,在实际问题求解的时候能运用计算思维。
1.2 计算思维方法
在程序设计课程中的概念都对应计算思维方法。例如常用算法递归、迭代等都是名副其实的计算思维方法。程序设计中的每一个项目都用到不同的计算思维方法,是计算思维方法的集合。
1.3 计算思维能力
计算思维的目的是求解问题、系统设计以及人类行为理解。求解问题即针对实际问题进行的计算机应用。如电子商务网站的创建、数据库应用系统设计、机器人制造这些都是计算机实际的应用。碰到实际问题能灵活运用计算思维把问题求解转换成计算机应用这就是计算思维能力,这也是计算思维的目的。
2 程序设计课程教学
程序设计课程是大学计算机教育第二层次的内容,通过本课程的学习,学生在掌握程序设计语言的同时更要在实践中掌握程序设计思想,培养以计算思维分析问题和解决问题的能力。
计算思维教学并不直接等于程序设计教学,但计算思维需要借助程序设计方法来实现,因此计算思维的教学重点在程序设计课程。程序设计课程内容主要有以下二个方面:程序设计语言和算法。程序设计语言属于工具的范畴,算法是解决问题的方法,正是计算思维的内容。
2.1 程序设计课程教学现状
2.1.1 传统教学方法存在的不足
目前高校面向非计算机专业学生开设程序设计基础课程,这是培养计算思维能力的非常好的载体。在教学中一般采用“教师传统授课+教师课程演示+学生上机实践”模式进行学习,重理论知识的讲解,是一种注入式的学习方法。这种传统的教学模式虽然强调了技术与应用的教学,却忽略了“思想的教学”,限制了学生的思维发展。
2.1.2 无意识的计算思维教学
由于计算思维提出的时间不长,且计算机求解问题的方法本身就是计算思维,这造成大多数计算机教师在课堂中都在进行着非系统化的、无意识的计算思维教学。
2.2 计算思维在《Visual FoxPro程序设计基础》教学中的培养和应用
《Visual FoxPro程序设计基础》这是一门广泛开设的程序设计基础课程,课程以培养学生利用数据库技术开展信息加工、管理和利用的意识和能力为目的的同时让学生掌握程序设计方法和基本算法。算法设计在《Visual FoxPro程序设计基础》课程中起主导地位,学生学习程序设计课程就是通过学习算法并选择相应的语言工具来体会计算机求解问题的思维方法。在这个不断体会的过程中,计算思维被系统、有意识、潜移默化地被植入到学生意识形态里。在《Visual FoxPro程序设计基础》课程中培养计算思维需从以下几个方面进行:
1)计算思维不是靠教师直接传授计算思维知识和方法给学生,而是需要提供某种知识情境,如思维者所处的内部环境包括知识、经验、情感和外部环境。教师要具备提供这种适合学生进行计算思维情境的能力。如带领学生参观学校的学生成绩管理系统,图书馆的图书管理系统,把学生长引入熟悉真实的计算机工作场景,提起学习兴趣,激发求知欲望,运用计算思维方法。
2) 任务驱动式的项目教学法。通过在项目教学法的环节中融入计算思维的训练,达到使学生加深对计算思维的概念的理解,获得计算思维能力,并在其指导下顺利完成项目任务。这是一种渗透式的教学过程,过程中计算思维能力的培养和学习任务的完成相辅相成。如课程学习开始时提出一个项目“图书馆信息管理系统”,在学习过程中不断学习新的知识和方法,到课程结束时完成任务系统的设计。endprint
3) 在项目教学法中,要强调计算思维的原理和方法,适量准确的知识有助于无意识的习得化为有意识的学得,提高学习效率。例如教师引入系统化的方法和原则,使学生学会掌握在完成一个复杂问题时能够有意识地运用这种思维方法把其转换成几个相对简单的子问题,这就是问题的模块化。通过这些训练,把相应的计算思维能力内化到学生能力结构中。
4)根据思维教学理论,暴露思维过程是思维得以训练和发展的前提。因此在计算思维教学中,教师和学生都要借助于各种载体来展示自己的思维过程便于学生借鉴和和学习;学生亦可将自己的认知过程展示,教师及时评价适当纠错。如在项目教学法完成以后,教师可针对性的选择学生代表讲述项目的完成过程,学生通过讲述对自己的认知过程上、思维方法进行整理。这种思维过程和能力的展示,使思维的发展处于良好的开放环境中,促进计算思维的学习和交流。
5) 建立恰当的评价体系。项目的完成是一个系统过程,具有一定的规模和复杂度,要使用多种方法和运用多种领域的知识并借助多种资源才能完成。在项目结束时以单一结果为依据进行评价是不十分不恰当的,这就需要一个多元化的评价体系,从多个角度、多种评价方式来评价以促进学生计算思维的发展。评价方式也应该改变,不再只由教师单一完成评价,评价过程应该是学生教师的互动过程,如“答辩式”评价方式适用;评价内容也不能局限于项目的完成与否及质量如何,还应该观察学生的计算思维的状态,如有无创新,是否体现了计算思维水平以及团队协作精神、情感、意志等因素[2]。
在《Visual FoxPro程序设计基础》课程教学中通过从以上几个方面努力,将计算思维与项目教学法结合起来,学生能运用计算思维方式发现和解决问题,不但丰富了教学方法更为重要地是项目进行过程中计算思维的能力得到培养。
3 结论
计算思维包含的内容并不是程序设计基础这一门课程所以承担的。计算思维教学贯穿于整个大学的计算基础类课程中。计算思维作为人类三大科学思维之一,在如今这个信息时代显得更为重要。计算思维是一种本质的、所有人都必须具备的思维方式,就像识字、算术一样[3],因此计算思维能力的培养是计算教育工作者的重要任务。然而对于学生来说,计算思维能力的培养和提高也不仅是在大学阶段,其在整个人生阶段都需要。
参考文献:
[1] Wing JM. Computational Thinking[J]. Communication of the ACM, 2006(49):33-34.
[2] 薛磊.基于计算思维的项目教学法的研究与实践[J].教育与职业,2012(11).
[3] 袁开榜.二十一世纪,人们应该具有计算思维能力[J].计算机教育,2011(2).endprint