APP下载

问题探究教学培养计算思维的实践探索

2014-08-15郭咏梅

长治学院学报 2014年2期
关键词:计算机科学计算机探究

郭咏梅

(长治学院 计算机系,山西 长治 046011)

1 引言

计算思维(Computational Thinking)是在 2006年由美国卡内基梅隆大学计算机科学系主任周以真教授提出的教育理念。她认为计算思维不仅仅属于计算机科学家,而应该和阅读、写作、算术一样,成为21世纪每个人必须具备的基本技能。

这一概念一经提出就引起了国内外计算机专家学者的广泛关注,如何培养学生的计算思维成为当前计算机教育研究的重要课题。美国计算机协会(ACM)和国际电子电气工程师协会计算机学会(IEEE-CS)在修订后的计算机科学教程2008(Computer Science Curriculum 2008)[1]中明确指出应该将计算思维作为计算机科学教学的重要组成部分。在国内,教育部高等学校计算机科学与技术教学指导委员会编制的《高等学校计算机科学与技术专业人才专业能力构成与培养》[2](2010年编)中指出,计算机专业人才的专业基本能力主要包括计算思维能力、算法设计与分析能力、程序设计与实现能力、系统能力,其中计算思维能力是最重要的能力。与此同时,多位研究者对如何培养计算思维进行了探索和讨论:文献[3][4]论述了计算思维在计算机基础教学中的重要性,强调要注重学科思维能力培养。文献[5]旗帜鲜明地把“计算思维能力的培养”作为计算机基础教学的核心任务。文献[6][7]探讨了在人工智能和离散数学课程中培养计算思维的思路和策略。尽管如此,如何在教学过程中培养学生计算思维仍处于一个摸索阶段,需要教学工作者去探索和实践。

文章以实际问题为主线,将计算思维的方法渗透到教学过程中,探讨培养学生计算思维的方法和策略,达到提高学生的计算思维能力的目的。

2 计算思维与问题探究教学

2.1 计算思维

周以真教授对计算思维的定义:计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,它包括了涵盖计算机科学之广度的一系列思维活动[8]。计算思维的本质是抽象(Abstract)和自动化(Automation)。典型的计算思维包括一系列广泛的计算机科学的思维方法:递归、抽象和分解,关注点分离、保护、冗余、容错、纠错和恢复,利用启发式推理来寻求解答、在不确定的情况下规划、学习和调度等。计算思维中求解问题的一般过程为:首先对问题进行抽象化的描述,然后设计求解问题的方案,最后通过编写程序代码、运行程序,实现计算机对问题的求解。

2.2 问题探究教学

问题探究教学是以学生为主体、教师为主导,体现“自主、探究、合作”的学习方式[8]。通过对教学内容中主要知识点进行自主学习、深入探究并进行小组合作交流,最终较好地应用已有的知识求解实际问题。

计算思维和问题探究教学共同的目标都是对实际问题的有效求解,计算思维的核心是以科学的思维方法思考问题和求解问题,问题探究教学是在实际问题的深入分析探究过程中进行学习。我们将二者结合起来,在探究性学习过程中,引导学生运用计算思维的方法分析、解决实际问题,一方面培养学生的计算思维能力,另一方面提高学生解决实际问题的能力和创新能力,进一步提高教学效果。

3 问题探究教学培养计算思维的教学案例

问题探究教学的过程一般分为五个步骤:(1)根据实际需求提出探究问题;(2)启发学生自主探究问题;(3)小组合作分析解决问题;(4)协作讨论交流成果;(5)总结提高拓展迁移。教师在各个环节启发、引导学生运用计算思维的方法去研究问题、解决问题,学生运用计算思维的方法自主、探究、合作学习,提高独立思考和解决问题的能力。下面是程序设计课程中“数据查找”问题的教学过程。

3.1 创设情景,提出探究问题

教师根据教学目标和教学内容的知识点,以一个实际问题为切入点,引出探究问题,调动学生的学习积极性、激发其学习动机。教师要深入研究教材,提出的问题要具有代表性和应用性,能够涵盖教学内容的知识点和计算思维方法。学生明确学习目标,理解要解决的问题,进入学习情景。

在教师的组织下,引导学生列举出日常生活中的实例。例如:查找学生考试成绩、在字典中查找字或词等,让学生讨论如何查找各类数据,激发学生学习和探究的积极性,由此引出“数据查找”问题。组织学生组成3-4人的学习小组,每组选择一个具体查找问题进行讨论。教师不仅要引导学生明确查找问题的具体要求,更重要的是启发学生用计算思维的概念和方法分析问题和求解问题。

3.2 启发学生用计算思维方法自主探究问题

学生带着问题自主学习,思考解决问题的方法,形成初步的解题思路。发挥主导作用的教师要适时为学生提供帮助与指导,对探究性学习中的思维方法作必要的指导。教师不能直接告知学生正确的答案,要启发、引导学生用计算思维的抽象、分解、关注点分离等方法去思考问题、解决问题,培养学生良好的思维习惯。

对于查找学生成绩问题,教师要引导学生独立地对问题的输入数据、输出数据和功能进行分析,对问题进行抽象,启发学生用程序设计语言中的符号、数据结构表示学生成绩信息。例如,将学生基本信息定义为类或结构体,数据成员包括学号、姓名、成绩等,函数成员包括数据的输入、输出、排序、查找等,定义对象数组或结构体数组存放学生成绩信息,让学生学会将实际问题表示为计算机能够处理的符号。在完成问题的表示之后,进一步鼓励学生自主分析、设计查找某一学生成绩的算法。

3.3 小组合作探究解决问题的方案

学生小组协作讨论、共享学习资源、内化知识和学习方法,形成解决问题的方案。教师在思维和策略方面提供帮助,引导学生进行知识的主动建构,学生以自己所掌握的知识经验为基础,对问题进行分析和处理,从而培养学生思维能力和协作能力。

在这一过程中,学生比较各种方案的优劣,选出最佳方案,设计具体的实现算法。教师要引导学生应用已学过的知识独立思考,设计查找算法;同时鼓励学生收集、查阅典型的查找算法,如顺序查找、折半查找等,让学生理解各种查找算法的具体过程,比较各种查找算法优点和不足,体会计算机处理问题的过程。通过小组讨论交流,各组选出一种最佳算法,进行完善和优化,并用流程图或N-S图等规范的工具描述算法。

3.4 交流展示成果,体会计算机自动化的内涵

在教师在组织引导下,学生以小组为单位讨论交流学习成果,切磋学习当中遇到的问题。

各小组根据设计的查找算法编写程序,展示各自的运行结果。通过成果展示,让学生学习同一问题不同的算法设计,从别人的成果中获得启发,拓展思路,领悟计算机自动化的内涵。

3.5 总结提高拓展迁移

首先由学生个人(或学习小组)对探究问题涉及到的基本概念、基本方法进行总结,对学习过程中出现的错误进行反思。然后由教师对教学内容的重点和难点、解决问题的计算思维方法、学生学习小组的表现进行归纳总结,使学生深入理解、掌握所学的知识和计算思维方法。教师还要提出相关联的问题,引导学生拓展迁移,对所学知识举一反三。

对于数据查询问题,每个小组派代表总结各自的分析方法、设计思路、算法的优点和计算思维方法,教师对各个小组的成果进行评价,并从整体上联系相关学科知识(如对象数组、查找算法等)进行总结,对计算思维方法(如抽象、分解、自动化等)进行点评和总结。同时,教师要引导学生提升对类、函数模板、类模板的认识,让学生体会计算机解决一类问题的方法。

在整个教学过程中,采用问题探究教学模式,在问题的求解过程中渗透计算思维的方法,培养学生良好的思维习惯,使学生掌握实际问题的求解过程和基本思路。

4 总结

问题探究教学和计算思维二者紧密结合,相互促进,在问题探究过程中培养了学生计算思维能力,计算思维使问题探究教学进一步提高和升华。这种教学方法充分调动了学生主动学习的积极性,增强了学生自主学习能力和小组协作能力,弥补了传统课堂教学的不足,真正提高了学生解决实际问题的能力和计算思维能力。

[1]ACM/IEEE Computer Society Interim Review Task Force.Computer science curriculum 2008:An inte rimrevision of CS2001[EB/OL].[2010-06-28].http://www.acm.org/educa tion/curricula/.

[2]教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术专业人才专业能力构成与培养[M].北京:机械工业出版社,2010.

[3]董荣胜.《九校联盟(C9)计算机基础教学发展战略联合声明》呼唤教育的转型[J].中国大学教学,2010,(10):14-15.

[4]董荣胜.计算思维与计算机导论[J].计算机科学,2009,(4):50-52.

[5]九校联盟_C9_计算机基础教学发展战略联合声明[J].中国大学教学,2010,(9):4.

[6]王甲海,印鉴.人工智能教学与计算思维培养[J].计算机教育,2010,(19):68-70.

[7]常亮,徐周波,古天龙,董荣胜.离散数学教学中的计算思维培养[J].计算机教育,2011,(14):90-93.

[8]周以真.计算思维[J].中国计算机学会通讯,2007,(11):77-79.

[9]何克抗,吴娟.信息技术与课程整合的教学模式研究之三—“探究性”教学模式[J].现代教育技术,2008,(9):5-10.

猜你喜欢

计算机科学计算机探究
一道探究题的解法及应用
计算机操作系统
一道IMO预选题的探究
Privacy Preserving Solution for the Asynchronous Localization of Underwater Sensor Networks
基于计算机自然语言处理的机器翻译技术应用与简介
探讨计算机科学与技术跨越式发展
探究式学习在国外
一道IMO预选题的探究及思考
信息系统审计中计算机审计的应用
浅谈计算机科学与技术的现代化运用