写程序最重要的就是如何把大问题不断分割成小问题的过程,其中,小孩必须去思考如何把代码合理的安排在整个程序中,才能让程序流畅的处理输入、演算、直到输出,这对小孩对事物的逻辑分析能力会有极大的提升。
2.培养小孩专注细心
除错,是每个写程序的人必经的事,不论大人小孩都没有例外。有时候只是少打了一个等号,或是在某一行的行尾少加了一个分号,就会造成程序大乱,更别说还有逻辑上分析问题时却忽略掉某种状况的陷阱。所以,在学习写程式除错的过程中,是绝对无法得过且过,能有效改正小孩马虎行事的毛病,避免当个差不多先生。
3.提高小孩耐性
当父母的一定遇到过这种情况,带小孩去吃饭,小孩怎么也坐不住,就是要跑来跑去到处吵闹玩耍。此时,有的人会拿出手机当做游戏机,小孩的注意力就瞬间被拉了回来,开始安静坐在位置上玩。我们的课程,就是运用这种特性,让孩子在游戏中学习,但这一次他们不只会玩到游戏,还会懂得一个游戏是怎么被设计出来的。
4.增加小孩抽象思考能力
其实学写编程,就像学习第二外国语一样。如果说学外文是为了跟外国人沟通,学写编程就是学习怎么跟电脑沟通。有趣的是,你碰到老外不会说英文还可以比手画脚,跟电脑可不行。这表示孩子在学习的过程中,更需要一种把抽象化为具体的能力,好让不懂得思考的电脑,也能了解与表达抽象的事物。
5.帮助小孩整理信息,吸收融合能力
写程序说穿了,就是一堆电脑指令的排列组合。好比小学的时候我们查字典学汉字、学成语,之后学习如何利用习得的汉字、成语组成句子,进而撰写文章一样。程式中的基本指令就是汉字,写成可重复利用的Function或Module就像是成语,然而最终要完成一个有头有尾的程式时,则必须融会贯通,学以致用,确保程序在执行中不会出现矛盾的情形导致Crash。
6.提升国际性的沟通能力、竞争力
显而易见,现在哪一门行业不用电脑?哪一个行业可以完全不需要接触电脑?如同先前提过的,电脑语言,已然成为一个重要的沟通工具,不但是跟电脑沟通,还有跟所有运用电脑的人沟通。小孩在幼时接触的环境,往往跟以后的发展有极大的关联性,如果不想跟世界脱轨,尽早让他了解所谓的编写程序,或是了解编程是怎么一回事将会是他们面对国际竞争时有力的武器。
7.学习团队合作,*共同学习
在适当的教学课程设计之下,学写程式就像玩游戏破关一样,同学彼此讨论「破关攻略」,你不会?我教你;我卡关,你帮忙。同时在互动之中增进情谊,也学到如何用团队力量解决问题。比起老师在台上单方向的讲课,同学之间的研究,将让学习效率大大提高。
8.训练空间思考能力
在编程控制游戏人物的过程中,是训练空间思考能力一个很棒的方式。小孩仿佛自己就是在高低起伏中,寻找迷宫出口的那个游戏角色,手脑一同运转起舞,左转、右转、跳上、跳下,置身于程式的世界中,在游戏之中学习,明白方向感以及立体的空间感。
9.增进解决问题能力
面对一道道关卡的挑战,小孩会不停的利用手边学到的资源、程序,试着达成破关的目的而不断的动脑。一旦养成这样的习惯,在碰到生活中或是其他课业上的问题时,自然也会试着自己解决,而不是一句话交给爸妈去处理。父母只要给予适当的工具,让小孩自己动手动脑完成。
10.Learn to code,code to learn
学写编程训练编程的思考方式Computational Thinking,如同学习阅读一样,在这个知识爆炸的世代是一种基本的能力。好比,从小我们学怎么阅读,并用阅读来学习更多其他的知识;从小学习怎么写程式、控制电脑,了解的是一种New Ways of Learning,并且从学习写程式的过程中,刺激小孩的学习动机。父母再也不用逼著小孩学习数学,因為他要写程式控制按钮、人物、得分、方向的同时,自然需要用到许多数学的技巧,让他在做中学。另外还可以提高小孩英文的能力,写程式让接触英文成為自然的事情。其他的科目如音乐、艺术、文学等等,一样可以运用在写程式的过程中,也就是我们说的code to learn。