Let your conversation be always full of grace, seasoned with salt, so that you may know how to answer everyone.
——Colossians 4:6【NIV】
你们的言语要常常带着和气,好像用盐调和,就可知道该怎样回答各人。
——歌罗西书 4:6 【和合本】
懂点技术,会讲故事,有点意思。
欢迎关注,相互交流,共同进步。
如果要你选一款在没有智能手机之前,却让你印象最深刻的手机游戏,那一定逃不开这一款——诺基亚的“贪食蛇”。
从1997年在6110手机上开发第一款手游“贪食蛇”开始,诺基亚就奠定了芬兰手游行业的基础。2005年,“贪食蛇”被预装到3.5亿部手机中,简单又具有吸引力的“贪食蛇”很快成为一款现象级的手游。
单色屏幕的游戏界面上有的是一条小蛇,捎带一个闪烁的点。小蛇沉迷于吞噬,只有这个点被吞噬了,才会有另一个点在别的地方新生,每一次出发都有转换的终点。
就这样一个普普通通的小蛇,却随着硬件设备的优化,也就是屏幕不断升级,也有了自己精致的“皮肤”。
再后来,各种智能手机普及,游戏多了,却再也没有一款游戏,似当年那般火热。不过之后又出了一个升级版的贪食蛇大战,玩法比以前丰富了许多,确实也火了一把,让不少家长也觉得“青春回来了”。但是与“青春版”相比,这款游戏拥有漫布的星星点点、需要小心避让莽撞的游戏玩家,各种套路和皮肤充斥在边边角角。
但是相信很多家长不知道的是,通过这款小游戏还能以编程思维来解读。今天我们就一起站在编程的角度“玩”一次不一样的贪吃蛇。
首先它的游戏规则就是:用上下左右键控制蛇的方向,寻找吃的东西,每吃一口就能得到一定的积分,而且蛇的身子会越吃越长,身子越长游戏难度就越大,不能碰墙,不能碰到自己的身体,等到了一定的分数,就能过关,挑战难度更高的关卡。
那我们如何通过这样一个逻辑去解读编程的操作呢,那就是涉及到一个核心的三个要素:拆解、分析和改正。
1、拆解:分解问题的能力
第一步:拆解
1. 输入 – 用户的操作可以有按上、下、左、右键四种
2. 输出 – 相应地,贪吃蛇也要做往上、下、左、右走的动作
第二步:再拆解!
设想贪吃蛇每走一步,可能会发生哪几种情况?
1. 吃到东西
2. 撞到墙
3. 撞到自己
4. 什么都没发生
第三步:再想想当「吃到东西」时,又能细分为几个步骤?
1.蛇张开嘴巴
2.东西被咬住
3.播放加分声音
4.蛇闭上嘴巴
5.身体变长一截
这样一分析下来,我们会发现原来看起来很简单的程序,拆解后步骤可真多,这还只是其中的一条小小分支!其实,学习编程的过程,就是在不断地训练孩子把复杂、庞大的问题拆解、理顺的过程。而同时,也在培养孩子们的耐心,和处理问题时有条不紊的能力。
2、分析:逻辑思维能力
逻辑思维中有个非常重要的原则叫做 MECE(Mutually Exclusive and Collectively Exhaustive),意思就是「相互排斥且整体完备」,也就是「不重复,不遗漏」。
在编程过程中,处处要考虑和遵循 MECE 原则。
如在贪吃蛇的程序里,蛇每往前走一步,可能会出现以下4种情况:
A、吃到了苹果;
B、撞到墙;
C、撞到自己;
D、什么都没发生;
这 4 种情况是互斥的,比方说吃到苹果的时候就不可能撞到墙,那么程序中就不能让苹果出现在墙上;而且,这 4 种情况覆盖了所有可能性,在写程序时如果只考虑了其中的 2 种或 3 种,就不「完备」了。编程过程中的这些思考对孩子来说都是非常好的逻辑训练。
3、改正:调试纠错能力
任何事情都很难一次就完成得尽善尽美,程序运行起来发现不对有问题,这时就需要孩子去寻找出错的地方,并将它一点一点去改正。
实际上程序中很多 bug 都不是一下就能找到的,常常需要从头到尾,把程序的运行顺序一步一步地走一遍,观察每一步的运行结果这需要很多的耐心、观察力和专注力,对孩子的抗挫折能力也是一种磨练。
相信很多家长通过“特殊玩法”的贪吃蛇,对少儿编程有了更多的了解。其实少儿编程教学的普及,让孩子学习编程,其目的并不是让孩子写代码,而是掌握“编程思维”,并以此提升孩子的综合能力。
权责声明
来源 | 网络
声明 | 文章部分图文版权归原创作者所有,如有侵权请与我们联系删除