《凯撒密码》教学反思
(2019-06-02 02:25:28)
标签:
it教育 |
要对计算思维在课堂教学中如何落实进行研究和实践,首先要对计算思维进行解构,提取关键要素。2013
年,英国南安普敦大学发展了计算思维的定义。他们他们认为计算思维是一种活动,是一个认知或思考的
过程,是一种以产品为导向又不局限于解决问题的过 程,总结了 12
个有关计算思维定义的核心要素,通过排除某些因素缩小了定义的范围,最终得出计算思维包含 5 个方面,即算法思维
(AlgorithmicThinking) 的 能 力、 分 解 (Decomposition) 思 考的 能 力、 抽 象
(Abstraction) 思 维 的 能 力、 在 评 估(Evaluation) 方面思考的能力以及概括
(Generalisation)思维能力。这个定义将解决问题的算法、分解、抽象、评估、概括的思想过程密切联系在一起。,“算法”主要
了解学生学习解决问题的具体步骤和方法的能力;“分 解”主要了解学生将问题分成若干个子问题,使复杂
问题得以模块化解决的能力;“抽象”主要了解学生 明确问题要求后分析问题,然后再把问题抽象成数据
结构和数学模型的能力;“评估”主要是了解学生对 自己提出的解决方案不断论证和判断的能力;“概括”
主要了解学生把抽象出来的事物的本质属性相联系,
运用迁移获得新知识的能力。下面我将结合初中八年级的信息技术Python程序设计最后一课“凯撒密码”进行阐述。
学生在明确任务之后,要明确如何将任务分解,并按一定的步骤来解决问题。首先,要对“凯撒密码”加密方法进行建模,通过密码盘分析凯撒密码加密策略可以了解到明文和密文字母是一一对应的关系,而这种“一一对应”的数据关系与字典数据是一致的。接着,学生还要将凯撒密码的加密过程和解密过程进行算法设计,并编写出自动解密和加密的程序。结合程序流程图,明确“凯撒密码”加密过程即将字典中的”键“用”值“来代替;解密过程是通过密码字典的“值”去查对应的“键”。我让学生进行分工合作,一人编写加密算法加密一个英文单词,一个编写解密程序,通过这种分工和合作验证程序准确性,在相互交流中对程序准确度和自动化程度进行评估。
课堂如果在此结束,学生只完成基本的学习活动,课堂活动平淡无奇。接下来,我又组织另一个活动,“在古代信息技术不发达的情况下,凯撒密码在战争中发挥了作用,如今我们能使用高速计算的计算机,也能编写自动化的程序,尝试破解老师加密后的一个单词密文吧!”学生看过一些特工类影视作品,对信息破译一下子又来了热情,后面课堂才真正进入思维的高潮。
不知道老师的加密字典如何破译呢?学生一下又讨论开并开始尝试。此时,会有小组想出“一种一种试”的“土办法”,但要全写出各种可能也要花不省的时间,此时,我及时引导“团结就是力量”,何不全班进行分工,全班通力合作,分组分别用递增偏移量解密,能得出完整短句的同学说出可能的明文。(如第1小组位用位移量1,第2小组用位移量2,……)最终学生终于找出26种可能的密文中准确的一个。对该活动进行小结时,我再引导学生回到学科方法和思想的学习:同学们这种破解方法,在密码学中称为“列举法”。这种将一个大任务分解为小任务由多台计算机处理的策略,也是“云”计算的基本理念。
课堂就到此?不是。现在教师和学生角色互换,由老师来破译学生们加密出来的密文。结果,我用预先写好的程序在十几秒内就解出学生加密的单词。学生在惊叹中急于想知道老师写的程序是什么样子的。此时,我再展示改进数学建模的“凯撒密码”破译程序进行分析:如果把ABCD……映射0123……的数列时,加密过程即是:(明文字母编号+偏移数)&,解密过程即是:(明文字母编号-偏移数)&,当将密码问题转化为更“数学化”的计算问题时,以偏移数进行26次递增循环列出26种可能明文,并很快可以在其中找出符合构词方式的单词。同时渗透对学生的情感态度价值观教育:在打击犯罪和捍卫国家安全时破译敌方信息是正义的行为,但在正常情况下破译他人私密信息则是不道德甚至是违法犯罪行为。“概括”与学生的“抽象”思考紧密相联,“抽象”是计算思维的核心之一,该环节拓展学生思路,再一次提升学生的计算思维品质。
课堂的最后是我为学生铺垫的另一级思维阶梯。引导学生讨论:“凯撒密码”算法有什么不足和限制?如何降低被破译的可能性?布置任务四:小改进密码词典或加密算法,对某一信息进行加密,小组之间进行破译挑战,检验加密方法的效度。以此激发学生的批判思维、发散思维,让学生提出新的加密策略,从而培养学生的创新思维能力。“评估”是学生对问题解决方案不断论证和判断的能力,前面学生编写基本加密解密算法是基础,在此是学生“评估”能力的进阶培养。
本课是教材的最后一课,课堂时空是有限的,学生的探究可能性是无限的,每节课我都会给学生指出更深入的研究方向,或者提出更具挑战性的任务。本节是由国外的信息加密导入的,而我国在古代也注种信息的保密。《孙子兵法》提到“三军之事,莫亲于间,赏莫厚于间,事莫密于间”。所以我提出一个课外挑战任务:
汉字是我们常用的文本信息,如果对汉字信息进行字典法加密,你有什么好的办法呢?汉字的特殊性需要更灵活的编码和解码方式,学生可以迁移计算机中文输入法编码进行研究。这个任务不要求学生能写出完整的一套中文加密程序。但可以做为一个综合实践内容搜集资料进行研究,拓展学科专业知识。
如果我们能在计算思维培养的目标导向下,通过设置极具趣味性或吸引力的任务,有针对性、有计划的将突出计算思维的关键要素,嵌入到学生的探究任务中,适时、恰当地点拨、引导,我们的课堂将时时可激发学生思考,紧紧抓住学生注意力,也必定处处可见学生的思维开花结果。本课学习内容深度、任务难度、思维水平呈现梯度上升的发展趋势,为学生搭建一级一级的学习台阶,引导学生一步步向上提升,学生的学科核心素养更到更综合的培养。本课也可调整为两个课时进行教学活动,或将“密码攻防”作为学生项目学习的主题。
前一篇:关于项目式学习和计算思维的思考
后一篇:关于人工智能教学的思考和实践