更多课程 选择中心


Python培训

400-111-8989

Python教学:编程如何培养学生计算思维

  • 发布:倪俊杰
  • 来源: 蓝调百香果
  • 时间:2017-10-30 16:18

大约从去年开始,身边的很多教师都在议论同样的话题:“信息技术教材要改革了,据说是大变样”,“高中信息技术可能要换一门新的语言了”,“以后的信息课该怎么上呢?”。作为信息技术学科一线教师,我也在积极关注学科发展的动向,有一些所思所想,供各位读者参考。

一、高中信息技术课程开展情况

为了摸清信息技术课程开展情况,教育部组织专家成立了专项调研组。在2012年8月下旬到11月上旬的两个多月时间里,调研组访谈了8个省84所学校的175名高中信息技术教师,并对283名教师进行了问卷调查。调研组还访谈了信息技术教研员以及对部分高三学生进行了问卷调查。

随后,调研组总结反馈调查的结果,认为当今信息技术课程存在两个方面的问题。一是教材内容的问题,二是课程实施的问题。对此,本人有几点看法:(1)信息技术课程内容既要符合当前社会发展的实际情况,又要和小学、初中的内容合理衔接,选修教材设置要能满足部分学生个性化学习的需要;(2)信息技术课堂追求要从工具化操作应用上升到学科素养的高度,“去工具化”迫在眉睫;(3)信息技术学科地位与其作用不相称,会考(学考)、高考将会逐渐步入正轨。(4)信息技术教师要正视学科发展前景,积极关注新一轮教材改革,前途愈发光明。

想必大家都知道,从目前各省公布的新高考方案,浙江是唯一的执行“七选三”的方案的省份。从某种角度而言,浙江的技术学科(信息技术+通用技术)被摆在一个特别“尴尬”的位置,全国都在看浙江的动向。那么,当前的技术课程能否适应高考的要求,今后技术课程的出路又在哪里?

二、什么是计算思维

2014年11月,教育部启动了高中所有学科课程标准修订工作。依据“中国学生发展核心素养”等方面的要求,课标组界定了信息技术学科的核心素养要素:信息意识、计算思维、数字化学习与创新和信息社会责任。又按照信息技术课程特征和知识技能的逻辑体系明确了高中信息技术课程的大概念:数据、算法、信息系统和信息社会。围绕信息技术学科的核心素养和学科大概念,新课标选择了兼顾实践性与理论性的课程内容,以突破教学中课程内容多为工具软件操作的局限,将高中信息技术课程分为必修模块和选修模块。其中,必修模块分为“数据与计算”、“信息系统与社会”两个子模块,而“数据与计算”模块中的内容强调了简单算法的学习,让学生掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法,将计算思维的形式化、模型化、自动化特征渗透至内容标准中。在这里,特别突出了计算思维的重要性。那么,什么是计算思维?高中信息技术课程中该如何通过编程教学体现计算思维呢?

查阅相关文献可知,计算思维是由美国麻省理工学院西蒙·帕佩特教授最早提出的,后来由美国卡内基梅隆大学周以真教授进行系统阐述和推广的。计算思维的含义是:运用计算机科学的基础概念进行问题求解、系统设计、人类行为理解等的一系列思维活动。计算思维应该是每个人具有的基本技能,而不仅仅属于计算机科学家。计算思维是一种思维方式,被认为是近十年来产生的最具基础性、长期性的学术思想,已经成为当今重点科学研究的内容。计算思维主要表现为“形式化、模型化、自动化和系统化”四个方面,包含三个层次的内容,计算思维意识、计算思维方法和计算思维能力。从意识到方法再到能力的过程不是一蹴而就的,这是一个循序渐进的过程,需要具有针对性的课堂教学加以培养。

那么,对于刚刚接触编程语言的高中学生而言,应该如何培养学生的计算思维呢?什么样的编程语言能够“担此重任”?

三、为什么选择Python

Python的创始人为Guido vanRossum(吉多·范罗苏姆)。1989年圣诞节期间,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序。Python是纯粹的自由软件,语法简洁清晰,极易上手,具有丰富和强大的库,常被昵称为“胶水语言”,能够把其他语言很轻松地联结在一起。

Python的程序可以怎么写?我们来看这样一个问题:输入圆的半径,输出圆的面积。用Python语言可以这样写:

>>>pi=3.1415

>>>r=eval(input("请输入半径:"))

请输入半径:6

>>>print(pi*r**2)

09400000000001

从以上程序可以看出,Python的语言确实非常简单,通俗易懂,可以当作学生的入门语言。除此之外,Python语言在数据分析,数据可视化,科学计算,硬件编程等领域有很强的优势。

Python语言从问世开始便引起了广泛的关注,其中也不乏学校和教师挖掘了其教学价值,很早就开始Python教学的实践。美国综合排名前100名的大学有超过70%都开设了Python编程语言类课程。北京理工大学作为国内较早一批引入Python语言的高校,自2013年起就开始面向全校非计算机专业学生开设了公选课《Python语言程序设计》,还有南京大学、哈尔滨工业大学、山东工商学院等多所院校都开设了Python语言的相关课程。

如果用一句话来说明为什么选择Python, “人生苦短,我用Python”这非句名言莫属。事实确实如此,花更少的时间,用更少的代码实现更强大的功能,何乐而不为呢?Python语言简洁易懂的特点,比较适合没有编程基础的学生。教师和学生不需要花费大量的时间去处理代码的格式错误。这样一来,教师在教学过程中能够更加关注算法思维的培养,让学生尽快地在编程中获得成就感,进而培养计算思维。

四、Python编程教学建议

信息技术课程是一门实践性强、技术条件及师资条件要求较高的课程。教师及教育管理者在课程设置、教学组织、评价方式、课程环境和教师培训等方面需要做好相应的准备。

1.课程设置建议

高中信息技术课程必修模块为4学分,选修模块为2学分。结合中学生的现有水平和认知特点,高中阶段的Python教学无需注重复杂的高级部分,而应强调Python语言的基本用法和常用算法思想,建议教学内容安排如下:

2.教学方法建议

教学方法是教师和学生为了实现教学目标,完成教学任务,在教学过程中运用的方式与手段。作为信息技术教师,如何在课堂教学中落实培养计算思维的目标呢?从认知发展来看,高中学生逻辑思维能力逐步趋于成熟,能够对自己的思想观点进行论证,能有条理地对各项经验加以理论说明,这也为学生计算思维的进一步发展创造了条件。

目前关于信息技术的课程教学方法有很多,例如:讲授法、任务驱动法、基于问题学习、游戏教学法、在做中学等,还有一批教师团队提出了“范例研习—模仿设计—自由创作”的教学策略。结合以上几种教学方法,根据计算思维的特点,我也曾经提出一种以项目式教学为指导的教学方法,即“案例启发创作”教学法。

“案例启发创作”教学法的设计思路是先让教师在课堂上设计一个教学情境,提出所要解决的问题。学生在教师的指导下对提出的问题进行分析、细化,然后根据情境创设的具体情况提出问题解决策略。在这个过程中,学生可以通过回溯验证对问题解决的策略不断优化。此外,学生根据问题解决策略对问题解决进行尝试。在这个过程中,学生通过对尝试解决后的反馈进行交流讨论、归纳总结,进一步细化问题后再提出新的问题解决策略,最终通过反复验证解决问题。当学生解决了教师创设的情境问题之后,学生可根据已有水平进行自主创作,就真正提升了专业技能。

3.教学保障建议

前文讨论了Python进入中学课堂的可行性和教学实施建议,但就目前国内中学信息技术教学现状而言,还存在一些现实的困境。首先,由于Python是开源语言,有很多动态的库,其语言本身还处在更新过程中。那么,Python教学应该选择什么版本,讲授哪些知识点,考试标准、考试形式、评价标准等内容都需要科学规划和设计。其次,由于国内大学引入Python教学的时间并不长,中学阶段更是没有开设的经验,不仅缺少成熟的教学体系,相应的教学资源也比较匮乏。如果直接在中学阶段开设Python课程,还尚无成功的经验可供借鉴。如果在此背景下直接开设Python课程,对一线教师来说无疑是巨大的压力和挑战。有问题要解决,有困境也要突围。面对以上问题,可以从以下几条途径予以解决:

(1)尽快开展教师培训

大多数中学教师没有接受过Python语言的完整训练,很多教师对Python语言一无所知,更别提实际的开发经验了。教师是落实课程标准的主体,教师对课程标准的理解和应用程度也就决定着课程标准的落实程度。开展基于课程标准的教师培训是课程标准实施的一项关键举措。建议教研部门尽快开展面向中学教师的Python语言编程和教学的培训,帮助教师具备扎实的教学能力。选择试验地区和试验学校进行Python语言的教学试验,在试验中积累有价值的经验。

(2)加强学科实验室建设

对于信息技术课程而言,必要的基础设施、基本设备是课程实施的物质基础。信息技术教学实验室应针对课程模块设立,着重满足学生实践操作的需求;除了考虑配备实验用品之外,还应当考虑配备适当的工具和测试仪器,以保证实验的水平和质量。建议有条件的学校建设信息技术学科实验室,倡导通过动手实践、实验操作的方式发展学生的创新能力。

(3)注重多元评价

评价作为一种价值判断的过程,反映出的是教育价值理解的多元性。因此,为全面评价学生的学业水平,信息技术学业评价应注重采用多元评价方式,通过多途径收集学生学习信息,判断学生学习结果,提供学习支持。基于核心素养测试的试题设计要从学生的认知规律出发,通过创设与信息技术相关的问题情境,在不同能力层次上对学生进行较为全面的考查。建议教育行政部门联合相关专家尽快制定与当下课改要求相适应的Python教学的考试和评价的标准,从宏观层面上建立Python教学的生态体系。此外,本人还认为有必要搭建基于Python语言的Judge Online系统,以适应学科的整体发展。

五、总结

最后不得不说,高中信息技术课程的改革之路异常艰辛,虽然信息技术新课标尚未正式公布,教材也没能面世。但从学科发展而言,编程语言的选择和教学实施是非常关键的问题,在学科核心素养的培养过程中有着举足轻重的地位。不管信息技术课程内容最终如何呈现,都希望各方能够足够重视信息技术学科的发展,共同创造一个有利于学科,有利于教师,有利于学生,也有利于社会的良好环境。

本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Python 中应该注意的编码问题
下一篇:Python学习-基本语法说明

2021年Python全套免费视频教程在哪里?

Python编程学习路线

Python最高有几级?

人工智能与语音遥控的区别?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省