东西儿童教育 报班前先看看这篇!,娃究竟要不要学编程?别急( 二 )


OMG,很刻板很麻烦很不舒服对不对?
是的 , 咱们人类的天性里充满了感性、随意、散漫、喜欢八卦、爱听故事 。
但电脑不是 , 作为新时代的高科技产品 , 它理性、严谨、不讲故事讲数据 , 它要么听不懂我们的指令 , 一旦听懂了就会执行 , 而且每次都会执行 。 可不像逃逃那样 , 明明听懂了 , 但帮不帮我倒水主要看心情 。
所以 , 要跟电脑沟通对话 , 我们也必须让自己变得理性、严谨起来 , 从电脑的角度去思考问题 , 这就是所谓的编程思维 。
这种思维能带给孩子什么好处?下面我用一个大家都很熟悉的小游戏“贪吃蛇”作例子 , 把编程思维所培养的能力逐个掰一掰 。 “贪吃蛇”是我当年学会编程之后所写的第一个完整像样的程序 , 写完了自己玩得乐此不疲 , 所以印象特别深刻 。
东西儿童教育 报班前先看看这篇!,娃究竟要不要学编程?别急
文章图片
贪吃蛇游戏规则:用上下左右键控制蛇的方向 , 寻找吃的东西 , 每吃一口就能得到一定的积分 , 而且蛇的身子会越吃越长 , 身子越长玩的难度就越大 , 不能碰墙 , 不能碰到自己的身体 , 等到了一定的分数 , 就能过关 , 挑战难度更高的关卡 。
拆——
分解问题的能力
要写一个“贪吃蛇”游戏 , 哇 , 这是一个很大的问题 , 该怎么入手?如刚才所讲 , 得想办法让电脑把这件事情搞明白 , 有哪些步骤 , 每一步该干什么 , 哪步在先哪步在后…所以我们首先得把这个大问题给拆了 。
拆解
在这个程序里 , 电脑主要处理两件大事:
1.处理输入–收集用户操作信息
2.输出响应–根据不同的输入 , 做出不同的响应
再拆解
1.输入-用户的操作可以有按上、下、左、右键四种
2.输出-相应地 , 贪吃蛇也要做往上、下、左、右走的动作
我们把第2点再拆解
贪吃蛇每走一步 , 可能有这几种情况:
1.吃到苹果
2.撞到墙
3.撞到自己
4.什么都没发生
看起来很简单的程序 , 拆解后步骤可真多呀 , 而且这还只是其中的一条分支 。 孩子学习编程的过程 , 就是不断地训练他把复杂、庞大的问题拆解、理顺的过程 。
这种思维在学习、工作、生活中处处都用得着 。 在解决复杂问题时 , 问题的分解必不可少 , 因为只有分解成每一个可以操作、可处理的小问题时 , 才算是把“大问题”落了地 , 一个一个小问题搞定了 , 大问题也就解决了 。
具备这种能力的人做事情是耐心的、有条不紊的 。 比如同样面对一道有挑战的数学题 , 分解能力好的孩子会列出清晰的解题步骤 , 搞定一步是一步 , 即使最后不一定能完全解答出来 , 也能清清楚楚地知道自己的进展;而有些孩子则不是 , 没有分解的耐心和能力 , 遇到难题时脑子一团乱麻 。
整——
发现并且整合“重复规律”的能力
先告诉大家一个秘密 , 程序员圈子普遍比较清高 , 常常为了表现自己与众不同 , 会用些听起来很高大上、但让外行很费解的术语 , 比如接下来我说的发现“重复规律” , 99%的程序员GG会告诉你的是“要模块化” , 摇头听不懂的话 , 他再假装体贴地解释 , 哎呀 , 就是善用“函数” , 封装方法啦~
都是些什么鬼?
其实说白了 , 就是幼儿园孩子都能搞得懂的“找规律” , 观察和找到那些重复发生的规律 。 比如“贪吃蛇吃苹果”所发生的一系列动作 , 是程序中多次会发生的 , 无论苹果在左上方还是右上方 , 无论蛇是从上面吃还是从下面吃 , 都是同样的一组动作 , 那么我们就可以把这组动作打包 , 给它取一个名字叫“吃苹果” 。 每次蛇遇到苹果时 , 就可以直接把“吃苹果”拿出来用 , 而不用重新把它所包含的一系列动作再想一遍 , 搞不好的话还会有错漏 。
在编程的过程中 , 孩子得一直做这样的训练 , 发现一些可以重复的单元 , 把它整合起来 , 让计算机去重复它 。