大家都有所不知的少儿编程教育 (2)
那么,问题来了,什么是计算式思维?
谷歌公司将计算式思维概括成四个组成模块:
1、能够把现实生活中的复杂问题,逐步拆分成更好理解、更可执行的小问题(Decomposition 拆分),接着
2、根据已有的知识和经验,找出新问题和以前解决过的问题的相似性,举一反三琢磨出规律(Pattern Recognition 模式识别),然后
3、聚焦重要的关键信息,将问题里涉及的数据抽象(Abstraction)到数据结构(变量,数组,链表等等),把数据处理过程可重复执行部分抽象(Abstraction)成函数模块,通过循环执行,最后
4、根据前三步的分析成果,设计一步一步的解决路径,写出算法(Algorithms),从而解决问题。
通俗的来讲,计算式思维,就是把一个看来困难的问题重新阐释成一个我们知道问题怎样解决的方法;它教会我们如何处理大麻烦,将它们化整为零,使之变得更加容易处理。它允许你用高效的方法大规模地运作。将真实世界用适当的抽象的方式转成模型,将我们的注意力集中在关键部分,帮助我们找到特定的解决方案。
计算式思维已经日益渗透到我们每个人的生活之中,诸如算法和前提条件,这些词汇已经成为人们日常语言的一部分。它的运用已经扩展到编写软件之外,甚至连机械工程、液体力学、物理学、生物学、考古学和音乐都运用到计算思维。今天,在高科技行业,几乎所有的科技领袖都是具备计算式思维的复合型人才,比如扎克伯格、马斯克、马化腾等。
3
编程教育应该培养孩子哪些方面的能力?
通过实际的教学实践,笔者认为,通过编程教育,至少应该培养孩子以下八个方面的能力:
1、编程知识与技巧
程序和算法有成熟的知识结构和体系,这一块是最容易学习的。
2、逻辑建构能力
孩子们通过编程做一个作品的过程就是一个创造的过程。他们首先要在心里大致构造出自己想要的作品模样,然后开始思考第一步该怎么做,第二步该怎么做。这些都对孩子的逻辑思维能力有很大的启发作用。即使在日常生活中,编程的逻辑思维也会让他们有条不紊地解决问题和表达出自己的想法。
3、设计策划能力
每一个作品的背景角色、角色效果以及行为规则需要孩子们自己来创作和选择,这些会对孩子们的设计能力和审美能力等有很大的提高。
4、思考与学习能力
在学习编程过程中,没有固定的知识领域,更多的是需要孩子们去主动思考,主动探索。孩子学习进度的差距,往往来自于孩子思考和学习能力的差距。
5、沟通与协作能力
随着项目复杂度的提升,需要团队之间的协作;随着沟通范围的扩大,孩子们甚至要参与到全球的沟通与协作中。
6、工程搭建能力
把硬件结合进来,培养孩子的工程搭建能力,并通过编程,解决现实中的问题,这对于孩子在未来的现实生活中大有裨益。
7、问题解决能力
发现现实中的问题,通过编程,解决掉,这是一种让人成就感爆棚的捷径。
8、案例分析与借鉴能力
鼓励参与到全球化的交流与分享中,能对他人的作品有鉴赏能力,广泛借鉴学习优秀案例,并优化整合提升自己的作品。当然,我们对他人的作品和努力必须保持充分的尊重。