儿童编程入门-Scratch简介(2)
很高兴写的关于Scratch编程的小文章能够得到家长们的认同,大家在微信上问了了我很多问题,一些问题也启发了我从另外的角度来思考这一问题。我把家长们问的一些问题汇总了一下,希望对各位读者有启发。
(1)孩子学编程最大的收益是什么?
说起来这个问题真是第一个难倒我的问题。我试着从几个方面来思考:
如果学会了编程也许能在学校比赛中获奖?
如果学会了编程也许能让思维更加缜密?
如果学会了编程也许能具有更强的竞争?
如果学会了编程也许能找到一份更加优越的工作?
以上这些好像都对,又好像都似是而非。有一次一位朋友问我:你为什么让小鱼学Scratch编程呢?我脱口而出:因为小鱼很喜欢这个啊,他能够从中收获很多的快乐。
的确是这样,我自己的经历和小鱼现在的体验,都让我深信其实编程本身是一个充满乐趣的过程。运用程序我们能表达生活中的人和事,运用程序我们能展示奇思妙想的创意,运用程序我们能将复杂重复的事情变得简单。能够收获这样的纯粹的快乐,实属不易。
(2)孩子学编程将来就是当程序员么?
作为一名老程序员,我其实并不认为每个人都需要精通编程。但我总是鼓励自己的孩子和朋友的孩子在有空的时候抽出一部分时间来学习编程,学习一些基本的逻辑分析技巧和程序排错思维。
孩子学习编程,肯定不是为了都成为程序员。在我看来,有一句话很重要:Code to learn, not lear to code. 写程序(code)是一项技能,和开车、打球、游泳一样。通过写程序培养的让人冷静的思考方式和严谨的逻辑化思维,是我们学习编程的目的所在。
所谓冷静的思考方式,即指程序行为对与错的最终判定者是计算机,无论你再怎么信誓旦旦说自己没问题,错了就是错了,不为人的主观意念所左右。小鱼最开始学编程的时候,经常对我哭喊:为什么不对啊,我明明没有错啊。过去仔细一看,哟哟哟,就是自己这里错一点那里错一点。现在好了,基本不喊了。如果结果不对,他知道自己埋头苦找了,很少再怪电脑了。
所谓严谨的逻辑化思维,即程序里每一个结果前后都是因果环环相扣的。因而在代码的世界里,需要思考各种因果关系,需要考虑达到一个目标所需要的资源和流程控制。尤其是对于儿童编程Scratch这样的语言来说,想不清楚就意味着写不出来,能写出来基本上就想清楚了。
(3)儿童编程和成年人编程的差别在哪里?
实话实说,这个差别不小。有个打趣的说法是:儿童编程看兴趣,大人编程看薪水。
首先就是目标不同。孩子的学习目标是发展兴趣打好基础,他们需要去了解有哪些编程学习工具?程序能做什么?学好程序需要掌握的一些其他基础知识还有什么?能不能用一些程序来辅助他的学习?或者利用程序来做一些有趣的好玩的东西?而大人的学习目标一般来讲就非常明确,就是为了解决工作中的一些问题,或者说以此为职业。
其次,选择的编程语言和工具不同。孩子由于要激发兴趣,必须能学得快,那么就选择像scratch这样图形化拖放类的容易上手,也不会犯错,但是程序效率并不是很高,也很难变成一个好的可发行产品。成年人则是选择了工业语言,因为必须拿它来完成一些工作。
第三,编程的组织方式不一样。孩子编程由于他们能力比较弱,时间投入少,大部分是个人编程,所以都是做一些小程序,就是复杂的程序,也很少有多人协作的。而大人编程往往是协作编程,他们需要共同完成一些复杂的项目,而这个项目里面所需要的技能比较多,可能一个人还没法做起来。
第四,应用场景不同。孩子的编程应用场景主要是做实验,验算,解题,辅助学习,或者说做一些好玩的动画程序,小游戏等等。而工作中的应用场景则是根据需求去解决一些项目中的问题,或者直接开发一个软件或者网站来提供一类服务。
(4)怎样知道孩子对编程是否有兴趣?
奶爸邓博士以前写过一篇帖子,介绍了Google的儿童编程网站Blockly Games,有兴趣的家长可以看看,让孩子先玩一玩。
Google趣味儿童编程游戏:Blockly Games
如果孩子对这个有兴趣,欢迎您带着孩子来STEAMBOAT试一下Scratch课程。
如果是7岁以下的小朋友,可以让爸爸妈妈在iPad删下载Scratch Jr这个APP,这是Scratch在iPad上的简化版本:
Scratch Jr这款应用没有使用文本,而是采用了联锁的色彩模块,去模拟逻辑结构和传统的编程语言。孩子们在平板上开发各种有趣的程序都是通过拖拽的方式,利用触摸屏接口来完成的。虽然ScratchJr非常精简,但是它还是保留了最基本的计算机概念,比如事件、序列、以及迭代等等,这些都是编程的核心概念。
iPad平台上还有一款儿童编程APP名为Swift Playgrouds,这是由苹果公司官方主推的产品,值得一试。
类似于书本的章节关系,在「课程」中 (无论基础还是进阶) 都是按照主题分为「章」,每一章内有若干「小节」。和普通的教科书不同的是,Swift Playgrounds 像 iOS 游戏那样,将对编程的介绍融入到关卡当中。
关于Swift Playgroulds的介绍,我们以后再专门找机会来说。总之,这两款APP都能让孩子们轻松愉快的踏入编程的世界里,自由的创造和分享。
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com