王鸿
【摘 要】计算思维是当前计算机和教育界较为关注的一个重要课题。因此,在中学信息技术课程的实施过程中,思考如何在信息技术课程教学中有效培养中学生的计算思维能力也日益变得尤为重要。为在初中信息技术课程中有效、全面以及多方位地培养学生的计算思维,本文首先介绍了计算思维的概念及其发展过程,然后结合初中信息技术课程的特点,重视加强学生的算法程序设计和编程能力,采用多样化的课堂教学,将信息技术与学科课程合理整合等方面给出了初中学习技术学科中计算思维培养的方法和策略,以期为我国初中信息技术学科中计算思维能力的培养提供相应参考。
【关键词】初中信息技术课程;计算思维;程序设计;课堂教学
中图分类号: TP317.4-4;G642 文献标识码: A 文章编号: 2095-2457(2018)18-0171-003
DOI:10.19694/j.cnki.issn2095-2457.2018.18.077
【Abstract】Computational thinking is an important topic in the field of computer science and education. Therefore, it is increasingly important to think about how to effectively cultivate the middle school students computational thinking ability in the teaching of information technology courses. In order to cultivate students computational thinking in an effective, comprehensive and multi-faceted manner in junior high school information technology courses and provide a reference for the training of computational thinking ability in our country, this paper first introduces the concept of computational thinking and its development process, and then puts forward three methods and strategies for cultivating computational thinking in junior high school learning technology subjects based on the characteristics of junior high school information technology courses. These three methods and strategies mainly include strengthening students ability in algorithm and program design and the programming, adopting diverse classroom teaching and the rationally integration of information technology and other subject courses.
【Key words】Junior high school information technology courses;Computational thinking;Programming;Classroom teaching
0 前言
在當今信息时代,科学技术飞速发展。为了全面培养中小学生的信息素养以及信息技术的操作能力,从而培养适应信息时代发展的新型人才,信息技术课程已被设置为义务教育阶段的必修课程,其目标不仅是培养学生学习和探索信息技术的兴趣以及提高信息处理能力,同时还要强化学生使用信息技术解决学习和实际生活中遇到的各种问题的意识和能力。目前,信息意识、计算思维、数字化学习与创新和信息社会责任这四个方面已成为我国信息技术学科核心素养的主要内容。其中,计算思维作为核心素养培养的核心议题,以其“面向学科”的特性已受到受到众多学者的高度关注[1]。因此,为更好地帮助人们清晰地认识信息技术学科核心素养体系,同时有效培养学生的信息素养,需要正确理解与把握计算思维的内涵和本质并正确定位计算思维在核心素养体系中的价值。对于初中信息技术学科教师,思考如何在信息技术课程教学中有效培养中学生的计算思维能力也日益变得尤为重要。
1 计算思维的概念及其发展
1.1 计算思维的概念
计算思维(Computational Thinking)与理论思维和实验思维并列作为人类三大科学思维方式[2],尽管人们对其关注较晚,但随着信息技术与计算机的飞速发展,其在当今信息社会的发展中已经起着举足轻重的作用并逐步成为信息教育领域广泛关注的一个重要课题。计算思维的概念最早于2006年3月由时任美国卡内基·梅隆大学(CMU)计算机科学系主任周以真(Jeannette.M.Wing)教授提出。她在著名刊物《Communications of the ACM》上发表的题为“Computational Thinking”的文章中首次对计算思维的概念进行了界定,她认为:计算思维即是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[3]。周教授同时强调:计算思维是每人都应掌握的基本技能,而不仅仅属于计算机科学家。我们在培养孩子的解析能力时不仅包括阅读、写作和算术(Reading,Writing and Arithmetic—3R),还应包括计算思维。正如印刷出版促进了3R的普及一样,计算和计算机也以类似的正反馈促进了计算思维的传播。根据周以真教授的观点,计算思维有助于人们加深理解计算的本质以及计算机求解问题的原理,同时可以提供一系列的观点和方法来帮助人们有效解决问题,因此计算思维是人们在日常生活和工作学习中不可或缺的一种能力。计算思维的概念一经提出,便得到了来自计算机科学、社会学、哲学以及教育学等领域的广大海内外学者的极大关注。
1.2 计算思维的发展
在国外,欧洲工业界及科学界的领导者最先于2007年9月在布鲁塞尔皇家科学院召开了名为“思维科学——欧洲的下一个政策挑战”的会议[4],强调了计算思维的重要性;随后,美国于2011 年将计算思维纳入计算机科学课程标准,即《CSTA K-12 标准(2011 修订版)》;接着英国和澳大利亚也分别依次于2013年和2015年在其新信息技术课程中将计算思维作为重要内容[5]。在我国,计算思维最早受到了高校计算机教育学界学者的关注,其最早的相关的会议是2008年10月在桂林召开的“计算思维与计算机导论”专题学术研讨会。其间,有来自全国 80 多所高校的近百名计算机教育专家出席会议,会上,学者们根据计算思维的研究及其对科技创新与教育教学的重要作用为出发点,探讨在计算机学科教学中如何发挥科学思维与科学方法的重要作用,同时探讨如何在课堂教学过程中实现计算思维的方法[6]。董荣胜教授在此次研讨会上作了非常重要的大会报告,并将报告内容以题为“计算思维与计算机方法论”的论文发表在2009年的《计算机科学》杂志上,并成为我国中文核心期刊上最早出现的关于计算思维的文献。随后,2010年7月,首届“九校联盟(C9)计算机基础课程研讨会”上发布的《九校联盟(C9)计算机基础教学发展战略联合声明》,确定了计算机基础课程的教学改革,其中明确指出此次教学改革的核心任务就是“计算思维能力的培养”。在此背景下,计算思维的重要性得到越来越多学者的认可,相关的研究工作如雨后春笋大量涌现,计算思维的应用研究内容也由高等教育研究逐渐扩展到中小学教育。特别是在2017新版《普通高中信息技术课程标准》中,已進一步明确指出计算思维是信息技术学科的四个核心要素之一,由此可见,计算思维能力的培养不仅是国内普通高校大学计算机基础课程的核心内容,同时也是高中信息技术课程的重要内容,我们坚信,在未来构建中小学的信息技术课程的教学体系中,计算思维的培养也将会被涉及和重视。因此,在初中信息技术课程教学过程中,为了进一步提高学生应用计算机知识分析和解决问题的能力,思考如何有效培养学生的计算思维能力是非常值得深入探讨的一个话题。
2 初中信息技术课程计算思维培养的方法和策略
计算思维能力包括算法化思维、分解问题、对信息与数据的抽象化、数学建模、可视化表达、逻辑化推理以及模块化规划等诸多方面。在信息技术课程中加强培养学生的计算思维,就是要让学生不仅掌握基本的信息技术操作能力,还要能够理解由人、计算设备和信息构成的信息系统的工作原理;通过多种不同方式来学习计算机科学的核心概念与方法,同时培养他们的抽象与逻辑思考、系统化思考等计算思维,并借助信息技术作品的设计与实践,增进计算思维的应用能力和解决问题能力,加强团队合作以及创新思考[1]。笔者认为,为了在初中信息技术课程中有效地、全面地以及多方位地培养学生的计算思维,可以从以下三方面着手:一是加强学生的算法程序设计和编程能力;二是采用多样化的课堂教学;三是将信息技术与学科课程合理整合。
2.1 加强算法程序设计和编程能力
算法与程序设计可以让学生体验算法思想,但编程教育在大部分中小学校通常也只为特长生提供而无法大规模开展。长期以来,由于不少学校教师和家长过分强调学生基础学科的学习而忽略了信息技术课程的重要性,觉得信息技术课程可由可无,只要可以掌握基本的计算机操作能力即可,从而对信息技术课程的关注不够,同时更是忽略了计算思维的培养。随着计算机技术在信息时代的飞速发展,计算机系统对人类社会的经济、文化和生活等各个方面的控制日益明显,我们的世界也日益朝着程序化、数据化和智能化方向发展,如人脸识别、智能家居、智能机器人等无不给人们的生活带来诸多便利。另外,随着物联网、云计算、大数据、机器学习、深度学习和人工智能等一系列深刻影响社会的“互联网+”关键技术的迅速发展,使得越来越多的人渴求学习并利用这些技术进行创新,从而需要人们对计算机逻辑有更深入和直观的理解,即要具备与计算机相近的计算思维及其与之关联的能力。于是,“从小就编程”逐渐得到越来越多人的共识。作为信息技术学科的教师更应该对初中生加强这方面的培养,并积极开展相关的竞赛活动来激发学生学习编程的兴趣。例如,在信息技术课堂开展机器人教学并鼓励学生积极参加机器人竞赛就会对培养学生的编程能力起到非常重要的作用。在我国,自从2001年以来,一年一届的“中国青少年机器人竞赛”的成功召开,有力激发了我国中小学生对机器人技术的兴趣,培养了他们动手、动脑的能力。参赛过程中,需要参赛队员通过在现场自行拼装机器人、编制机器人运行程序、然后调试和操作机器人解决预先设置的任务,这充分培养了学生的创新精神和实践能力以及团队合作,有力加强了学生计算思维能力的发展。另外,将机器人和游戏的设计与开发等课程中所利用的高级计算机编程语言引入信息技术课堂,也是培养中小学生计算思维的有效途径。目前,为了更好地对高中生实施并落实计算思维的培养,Python语言编程基础已被纳入部分省份的信息技术课程与高考的内容体系,可以预见,Python语言也将会迅速进入我国中小学课堂。因此,利用Python等编程语言进入课堂为契机,深入探索培养学生计算思维的有效模式和方法,也将具有非常重要的作用。
总之,加强学生编程能力,在信息技术课程中积极开展相关内容的教学,可以促进学生的计算思维发展,同时将会为学生日后从事现代科学研究与工程实践奠定坚实的基础。
2.2 多样化的课堂教学
教师在设计信息技术课程的教学活动时,可针对培养学生计算思维能力中的算法化思维、分解问题、对信息与数据的抽象化、数学建模、可视化表达、逻辑化推理以及模块化规划中的一个或者多个方面进行设计。例如,在初中信息技术课程的“计算机硬件组成”的教学设计中,教师可以直接将电脑现场拆开,并向学生展示和介绍计算机内部的各个组成部分的名称、功能及简单的工作原理,让学生亲历其分解的整个过程,以培养其分解问题的能力。
2.3 信息技术与学科课程合理整合
将信息技术与其它学科合理整合,同样可以加强培养学生的计算思维。在国外计算思维培养的课程中,不仅涉及到计算机科学与计算机编程的相关课程,还有诸多成功将计算思维与语言艺术、数学等课程等相结合的优秀案例。例如,Paul Miller[8]的案例研究报告了一个耳聋的13岁男孩Navon,在接触了三个月的计算机程序语言Logo后,盡管几乎Navon完全缺乏说话技能,但他还是在编程技能方面还是取得了较大的进步。Ken Kahn等人[9]研究了在计算机程序设计中教学活动的设计与实施情况,这项研究的是WebLabs项目的一部分。该项目由来自一些欧洲国家的学生通过建立计算模型和程序来探索数学和科学中的话题。Ken Kahn等人专注于通过解释并构造ToonTalk语言以使学生探索无限集中基数的概念。实践表明,这样的方式能让学生理解相关的数学概念。因此,信息技术与学科课程的合理整合,不仅能在程序设计等“专门”的计算机科学课程中培养学生的计算思维,还可以在应用计算机语言及相关课程的教学中,促进学生计算思维的发展。
3 总结
创新型人才是当今世界的核心竞争力。计算思维是创新性人才的基本素质和要求之一,新思想、新方法以及新研究成果的出现,会促进人们思维模式朝着“计算思维”转变,同时也会带来自然科学与工程、社会经济与技术等领域的飞速发展。要想在自然科学与工程等领域处于世界领先地位,对计算思维的研究和培养必不可少。近十年来,计算思维的理念已在我国高校得到了大力推广。作为提升学生信息素养的中小学信息技术课程,也应承担起培养学生计算思维能力的重任。这就要求我们中小学信息技术学科教师在开展教学的活动中,要重视学生计算思维的有效培养,同时还要在教学经验中不断探索挖掘学科教学内容对应的计算思维并设计相应的教学课程,为培养“像计算机科学家一样思维”的创新型人才奉献一份力量。
【参考文献】
[1]张进宝,姬凌岩.中小学信息技术教育定位的嬗变[J].电化教育研究,2018,39(5):108-114.
[2]朱亚宗.论计算思维——计算思维的科学定位,基本原理及创新路径[J].计算机科学,2009,36(4):53-55+93.
[3]Wing J M.Computational Thinking[J].Communications of the ACM,2006(3):33-35.
[4]袁开榜.二十一世纪,人们应该具有计算思维能力[J].计算机教育,2011(10):30-33.
[5]肖广德,高丹阳.计算思维的培养:高中信息技术课程的新选择[J].现代教育技术,2015(07):38-43.
[6]牟琴,谭良.计算思维的研究及进展[J].计算机科学,2011(3):10-15.
[7]董荣胜,古天龙.计算思维与计算机方法论[J].计算机科学,2009,36(1):1-4+42.
[8]Miller P.Learning with a missing sense: what can we learn from the interaction of a deaf child with a turtle?[J].Am Ann Deaf,2009,154(1):71-82.
[9]Kahn K,Sendova E,Sacristán A I,et al.Young Students Exploring Cardinality by Constructing Infinite Processes[J]. Technology Knowledge & Learning,2011,16(1):3-34.