1.2 学编程的好处

尽管我不认为每个人都需要精通编程,但我还是鼓励每个孩子都接触编程。

学习编程并非为了成为程序员,而是为了培养缜密的思考方式和严谨的思维逻辑。程序运行的对与错的最终判定者是计算机,它不会投机,也不会主观判定;程序里处处是因果,因而需要思考各种因和所导致的各种果,需要全面思考、清晰分析。

学习编程对孩子的帮助很大,可以归纳为以下10点:

1 强化思维逻辑能力。

编程是一种高度逻辑化的思考方式,它需要编程者不断地分析问题、拆解问题、探索方案、验证方案,并将其转化为计算机可以理解的程序语言。整个编程过程需要不断地进行推理和分析,以实现一个清晰、有效的解决方案。

编程需要严谨的思维逻辑、多维度分析、多方面组合,最终形成一个完整可运行的程序。这种思维方式可以帮助孩子们在日常生活中更好地进行逻辑思考,更清晰地理解因果关系,思考多维度因素,考虑各种情况,更系统地处理复杂信息。

2 培养专注力和细心度。

编程是一种需要高度专注和细心的活动,孩子在编程过程中需要专注地思考实现方案,细心地编写每一行代码,细心地排查问题和专注地修复各种错误。这种思维练习可以帮助孩子养成细致专注的思考习惯,提高错误排查能力,增强留心细节的观察力,从而提高专注力和细心度。

编程中少写一个字母、忽略大小写、末尾缺一个分号,都会造成程序错误。因此,在编写程序的过程中,排错是不能敷衍了事的,这个过程能有效改正孩子马虎行事的坏习惯,避免当个“差不多”先生。

3 提高耐心,建立延迟满足感。

当父母的一定遇到过这种情况,带孩子去吃饭,孩子怎么也坐不住,总是跑来跑去,到处吵闹玩耍。这时如果拿出手机,孩子会瞬间回到座位安静地玩游戏。

爱玩是天性,以游戏项目作为课程就是运用这种天性,让孩子在玩中学、学中玩。但是编写游戏和玩游戏是有很大区别的,编写游戏需要经历一个比较长的过程,需要构思分析拆解编程尝试验证优化等,它不是一蹴而就的,这就是一个培养耐心和建立延迟满足感的过程。

4 增强抽象思维能力。

编程需要将具象化为抽象,将现实中的问题抽象成计算机可以处理的形式,这需要孩子具备较强的抽象思维能力。编程中的抽象思维表现在对问题进行适当的简化和抽象,将问题分解成更小的单元,并对它们进行分类和组合,从而建立起一个完整的程序结构。

通过编程实践,孩子可以逐渐培养抽象思维能力,学会将复杂的问题、相似的问题进行抽象处理。这种能力不仅可以帮助他们更好地理解和解决编程问题,同时也可以应用于其他领域的问题解决和思维创新。

5 提升信息整理、融会贯通的能力。

程序是一堆计算机指令的组合,好比我们先学汉字、学词语,然后组词造句,最后撰写文章编写书籍。程序中的基本指令就像汉字,建立对象就像组词,创建函数方法就像造句,编写项目就如同撰写文章。

编程可以帮助孩子学习如何快速获取并处理信息,学会有效地组织和管理信息,从而提高学习和工作效率,以及跨学科的运用。

6 提升孩子的沟通表达能力。

显而易见,各行各业已经离不开计算机,编程语言已然成为一种重要的沟通工具。它不但可以跟计算机沟通,还可以跟所有运用计算机的人沟通。

编程是一种普遍适用于全球的表达方式,能够帮助孩子掌握一种国际性的沟通方式。这种跨文化的交流可以帮助孩子更好地理解和尊重不同的文化和价值观,培养国际意识和沟通技能。

7 让孩子学会团队协作。

在适当的教学课程设计下,学写程序就像玩游戏闯关一样,同学们可以彼此讨论破关攻略。结对编程,你分享,我倾听;我编程,你帮忙;你设计,我体验。同时,在互动中彼此协作,学习如何利用团队的力量解决问题。比起老师在讲台上单方面地讲课,同学之间的交流和探讨更容易提高学习效率。

在团队中共同学习可以帮助孩子不断提高自己的沟通能力和协作能力,锻炼接受不同角度的提议和多维度思考的能力。这种团队合作和共同学习的经验不仅可以帮助孩子在编程领域取得成功,也可以应用于其他领域,如体育、艺术和社会活动等,从而培养孩子的领导能力和协作能力。

8 训练孩子的空间思维能力。

在编程中控制游戏人物,是训练空间思维能力的一个很棒方式。孩子仿佛自己在高低起伏的地形中穿梭跳跃,在编程世界的闯关游戏中探索,在游戏中学习,感受空间的方向和三维架构。

在编写程序时,需要考虑各种数据、代码和函数之间的关系和空间布局,这就需要孩子具备空间感知力和创造性思维,能够从不同角度考虑问题并找到最优解决方案。例如,孩子需要将不同的图形、图像和动画元素组合在一起,创建出一个完整的游戏或应用程序。在此过程中,需要考虑不同元素之间的空间关系、层次结构和交互方式,从而设计出一个美观、立体的程序。

9 增进孩子解决问题的能力。

面对一道道关卡的挑战,孩子会不断思考如何利用学到的知识、程序达到闯关的目的。一旦养成这样的习惯,在碰到生活中的问题或其他课业问题时,自然也会试着自己动手动脑去解决,父母只需要给予适当的工具和提示即可。

在编写程序的过程中,可以培养孩子解决问题的能力,例如定义问题、描述问题、分析问题、寻找方案、验证方案和评估结果。通过不断尝试和探索,可以提高解决问题的能力。这些技能和能力还可以应用于数学、科学等其他领域。

10 Learn to code,code to learn。

编程思维(Computational Thinking)就像阅读能力一样,是一项基本的能力。编写程序、控制计算机,这是一种新的学习方式。在学习编程的过程中,可以激发孩子的学习兴趣和主动性。父母再也不用逼着孩子学习数学,因为当他想要在编程项目中实现3D空间时,就需要学习立体几何;想要完成计分规则,就需要使用代数知识;想要完成角色的跳跃,就需要用到万有引力;想要完成地图设计,就需要美术功底;想要融合背景音效,就需要音乐知识;等等。编程项目中必然需要数学技巧、物理知识、艺术创造等多学科的融合。让孩子在编程的同时自主学习,就是我们所说的code to learn的理念,也是实现跨学科融合的一个好途径。

通过学习编程,不仅可以掌握编程语言和技能,更重要的是可以培养学习能力和思维方式。编程是一种全新的学习方式,通过编写程序,孩子可以探索各种知识领域,例如数学、科学、艺术和社会学等,同时也可以学习各种技能,例如逻辑思考、创新能力和团队合作等。编程还可以帮助孩子发现问题、分析问题和解决问题,并通过实践加深对知识的理解和应用。