当前位置:首页 期刊杂志

基于计算思维培养的中学程序设计教学模式探究

时间:2024-08-31

方金波

摘要:本文从计算思维的概念出发,以计算思维的五个特征(抽象、分解、算法、评估和概括)为切入点,提出了以人文情怀涵养中学程序设计教学的模式。并通过分析Python教学实例《恺撒密码》,阐述了笔者是如何开展中学程序设计教学来培养学生的计算思维。

关键词:计算思维;中学程序设计;人文情怀

自美国卡内基·梅隆大学周以真教授提出“计算思维”后,“计算思维”逐渐受到教育界的关注。计算思维已成为公认的计算机科学与技术领域的核心素养,并被作为信息时代除了读写算之外的基本能力[1]。2013 年,英国南安普敦大学的塞尔比和伍拉德博士在周以真教授提出的计算思维概念的基础上,将计算思维的特征分为抽象、分解、算法思维、评估和概括五个要素。该定义和解析与计算思维教育教学有较为密切的联系。把握计算思维核心要素的内在层次关系,可较好的设计培养计算思维的教学活动,特别是程序设计的教学活动。信息技术学科是培养计算思维的主要载体,而程序设计与计算思维的关系是最密切的,它是培养计算思维的重要手段。因此,开展好程序设计教学尤为重要。

传统的课堂教学以教师传授事实性或陈述性的知识为主,这些知识仅仅是关于世界“是什么”的知识,学生很难获得程序性知识和策略性知识[2]。传统的程序设计教学是教师讲授程序例子,学生模仿练习的“讲—练”模式,这种模式难以有效地培养学生的算法思维,而且在缺乏拓展与创作的情况下,也不利于培养学生的创新精神和实践能力。而基于计算思维培养的程序设计教学,改变了传统的程序设计教学模式,发展了学生抽象特征、问题分解、算法设计以及概括迁移的能力,促进了学生计算思维的生长。

一、基于计算思维培养的中学程序设计教学模式

从计算思维的角度开展程序设计教学,不仅能使学生更好地理解基本的程序设计原则,理解计算在解决科学问题中的作用;而且能使学生更好地分析、抽象问题,理解数据结构的基本功能,最终设计出有效解决问题的程序设计方案。在程序设计教学实践中,笔者发现以人文情怀涵养教学,学生能更自主地学习知识与技能,能更乐于探究解决问题的方法,而且,学生的品格也得到了涵养。

人文情怀,是一种人文精神,即一个人的思想、学识、文化修养、人格情绪等在人生中的综合体现。将人文情怀迁移到教学上就变成了一种自在的教学境界,这一境界就是求真、向善、臻美。人文情怀对教学的涵养非常宽广,涵盖了价值观的引领,批判精神、计算思维和逻辑思维的培养,欣赏美、设计美和创造美的启迪[3]。

教学过程的第一个环节是“创设情境”。情境是教学与学生心灵沟通的桥梁,情境创设巧妙,则学生更易入境生情,与学习内容无缝对接。笔者在教学实践中注重创设内隐人文情怀的教学情境,其内涵包括引发内省、关注世界、追求真善美等。情境创设最终将教学活动引向了或求真、或向善、或臻美的境界。

教学过程的第二个环节是“问题分解,任务探究”。程序设计中的“问题”往往有复杂、繁琐的特点,因而需要引导学生采用枚举、递归、分治等方法进行问题分解。对于学习任务的设计,应遵循由易到难、由简及繁的原则,应符合学生的认知规律。通过探究活动,促使学生发现问题,然后尝试分析、解决问题,学生的思维能力因此得到发展。

教学过程的第三个环节是“分享与评价”。在教学中教师应及时、到位地评价学生的作品,还应适时展示教师自创或其他人的优秀作品,给予学生创新方向的引领,并引导学生进行二次创作。最后再展示优秀学生作品(或优化后的作品),提升学生学习的成就感,激发学生后续的学习动力。

最后一个教学环节是“总结与提升”。教师挖掘、揭示教学任务背后内隐的人文情怀,超越程序设计教学,引领学生感悟求真、向善、臻美的美好境界。

二、基于计算思维培养的中学程序设计教学实践

下面笔者通过Python教学实例《恺撒密码》来阐述自己是如何开展程序设计教学来培养学生的计算思维的。

课堂伊始,笔者展示一些字母“Vhoi-lpsuryhphqw”,问学生是否了解其中的意义,然后引出密码学相关概念及恺撒密码的由来。从恺撒密码用于古代战争的情境中,提出本节主要任务:通过Python编程,利用位移替换的方法自动加密信息或解密信息。

在第二个教学环节,笔者首先分析如何加密,例如将明文的字母按字母表的顺序后移3位,明文为RETURN TO ROME,密文则为UHWXUQ WR URPH。接着引导学生抓住问题的关键:后移3位,明文与密文的运算表达式该如何表达?通过进一步的问题分析与引导,学生发现,字母c向后推移3个单位,可以表达为chr(ord(‘c’)+3)。当学生编程调试后,会发现问题:不是26个英文都可以用上面式子运算的。之后,笔者尝试引导学生解决最后3个字母(X、Y、Z)的移位的运算问题。抽象是计算思维的本质,这里尝试通过抽象的方法,分析数据,引导学生设计可计算的模型,从而达到培养学生计算思维的目标。

当学生通过编程,解密课前展示的密文“Vhoi-lpsuryhphqw”(密钥为3)后,笔者再提出下一个探究任务:已知密钥是1至13,请解密密文“Zbywhzz fvbyzlsm”。全班13个小组,每一个小组设计一个密钥的解密程序。全班学生分工与合作,兴致颇高,最终有一个小组发现了明文内容“Surpass yourself”(超越自我)。至此,学生恍然发现本节课解密的内容就是我校的校风“自强不息,超越自我”。学生不知觉中掌握了字符串处理的重点学习内容。

在学生能编程解密确定密钥的密文后,笔者让学生编写加密程序,并继续优化程序,使其能按自定义的密钥加密,或解密不确定密钥的密文。在“分享与评价”环节,让一小组学生给出密文,另一小组学生进行解密,然后再自评或互评。之后,笔者展示了一个采用结构化方法编写的恺撒密码程序。它有加密和解密两种模式,它可直接罗列所有密钥对应的明文内容,大幅度提高问题解决的效率。通过展示该程序,提升学生对编程方法的认识,也为学生优化程序提供了思路。

在最后的“总结与提升”环节,笔者总结字符串处理的基本方法;鼓励学生查阅汉字加密的技术资料;重申本节课解密的内容“自强不息,超越自我”,并勉励学生弘扬校风精神,努力向上,刚毅坚卓,不断地自我完善。笔者通过将含有人文情怀理念的校园文化融入程序设计当中,让程序设计教学得到了升华。

经过一个学期的教学实践,笔者发现基于计算思维培养的程序设计教学模式,能够有效发展学生的计算思维;而将人文情怀渗透到程序设计教学中,学生均感受到了程序设计的温度与美好,这对于学生良好品格和关键能力的形成大有裨益。

参考文献:

[1] 吴向东,王继华.超越信息素养——“技术—文化”一体视域下的信息技術教育发展方向探讨[J].中小学信息技术教育,2014(05):17-21.

[2] 王荣良.计算思维教育[M].上海:上海科技教育出版社,2014:125.

[3] 方少芹.人文情怀涵养下创新思维培养的策略[J].中国信息技术教育,2017(05):13-15.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!