CodeMonkey于2014年1月在以色列成立。它的愿景是建立一个全球性的学习平台,让孩子们通过游戏的方式学习、发现、创造和分享,同时在此过程中获得编程这一项21世纪必备的技能。

通常提到CodeMonkey是指它推出的Coding Adventure这门课程(如非特别说明,接下来的CodeMonkey即是指Coding Adventure),它也是接下来的文章中将会被重点介绍的内容。

游戏的主角是一只可爱的小猴子,它的香蕉被一只大猩猩抢走了。

游戏的目标就是让小朋友以编程的方式,帮助小猴子把香蕉给拿回来。

在游戏的过程中,小朋友将会学习到基本的计算机科学知识,如变量,数组,for循环,函数定义,条件语句,until循环,if else条件判断,布尔运算,键盘和鼠标事件等,并逐渐掌握编程思维。

目前,CodeMonkey已经推出了超过400个关卡,在全球范围内超过250万用户,并且进入许多新式的学校里,包括硅谷著名的AltSchool.

其实,除了Coding Adventure之外,CodeMonkey也推出了很多其它的课程,像Game Builder,在这里,小朋友可以自己创建基于Coding Adventure故事情节的游戏,与全球的孩子们分享与交流。另外,CodeMonkey也有基于Python的相应课程。

可能有人会问,CodeMonkey与同样针对青少年的编程平台Scratch有什么区别?

不同于Scratch拖曳式的搭积木的方式,CodeMonkey开发了一种名为CoffeeScript的语言,它与业界广泛使用的JavaScript一样有用,同时如同Python一样友好直观,因此,它非常适合于小朋友编程入门。

当然也有人会问,CoffeeScript在实际生活中有用吗,工作中能用上吗?

答案是CoffeeScript在实际工作中基本没有多大使用价值,因为它是专门用来作为编程入门使用的。它就像是我们小时候还不会骑自行车时所使用的后面有三个轮子的脚踏车,虽然我们在日常出行中不会将它作为出行工具使用,但它却是学习骑自行车的非常不错的入门工具。

另外,有一点得注意,学习CodeMonkey,并不是为了去学习CoffeeScript这门编程语言。小朋友们要学习的是编程思维,掌握如何使用编程的思想去解决问题。

好了,话不多说,我们先来认识一下游戏界面吧。

左边这块背景为绿色草地的部分,是游戏的舞台,可以看作是整个游戏的输出部分。

而右边就是我们写程序的地方啦。我们可以通过直接敲击键盘来输入代码,或是按右下方的按钮,同样可以达到输入的目的。这一块可以看作整个游戏的输入部分。

另外,还有几个小按钮需要介绍一下。

右上角的三个按钮分别是你的头像、关卡切换和菜单。第二个像一张地图似的图标,我们用它来在不同关卡间切换,需要注意的是,你只能在你已通关的关卡之间切换。

右边最下方,有一排可以输入代码的按钮,例如上图中的画着两只小脚丫的step按钮,按下它,编码区就会输入step了。

那个绿底黑字的RUN按钮,是用来运行你所写的代码的开关。当它被单击按下以后,左边舞台上的角色,就会按照你所书写的代码来执行相应的动作啦。

好的,现在让我们来看一个视频,具体感受一下吧。

点击此处,可以免费体验。

由于 CodeMonkey 目前并不支持手机,所以请使用平板或是个人电脑访问以上链接地址,选择任一 guest_0xx 用户名登录,密码即是用户名。

小孩学习编程的绝佳游戏——CodeMonkey的更多相关文章

  1. SecureCRT 绝佳配色方案, 保护你的眼睛

    http://blog.csdn.net/zklth/article/details/8937905   关键词:SecureCRT配色, SecureCRT设置颜色, Linux终端配色,Linux ...

  2. SecureCRT 绝佳配色方案, 保护你的眼睛(转发)

    SecureCRT 绝佳配色方案, 保护你的眼睛 关键词:SecureCRT配色, SecureCRT设置颜色, Linux终端配色,Linux终端颜色设置. 终端有一个好的配色,不仅能保护自己的眼睛 ...

  3. Font Awesome,一套绝佳的图标字体库和CSS框架

    http://fontawesome.dashgame.com/ http://www.runoob.com/font-awesome/fontawesome-tutorial.html Font A ...

  4. 转:UFLDL_Tutorial 笔记(deep learning绝佳的入门资料 )

    http://blog.csdn.net/dinosoft/article/details/50103503 推荐一个deep learning绝佳的入门资料 * UFLDL(Unsupervised ...

  5. SecureCRT 下载,安装,绝佳配色,实用配置,上传下载配置合集

    SecureCRT 下载,安装,绝佳配色,实用配置,上传下载配置合集 chocoball 发布于 2年前,共有 3 条评论 SecureCRT 是一款支持 SSH2.SSH1.Telnet.Telne ...

  6. [转载]SecureCRT 绝佳配色方案, 保护你的眼睛

    FROM:http://blog.csdn.net/zklth/article/details/8937905 SecureCRT 绝佳配色方案, 保护你的眼睛   关键词:SecureCRT配色,  ...

  7. YTU 2845: 编程题AB-卡片游戏

    2845: 编程题AB-卡片游戏 时间限制: 1 Sec  内存限制: 128 MB 提交: 30  解决: 13 题目描述 小明对数字的序列产生了兴趣: 现有许多张不同的数字卡片,用这若干张卡片能排 ...

  8. 【Qt编程】3D迷宫游戏

    说起迷宫想必大家都很熟悉,个人感觉迷宫对人的方向感是很大的考验,至少我的方向感是不好的,尤其是在三维空间中.由于这段时间帮导师做项目用到了三维作图,便心血来潮想做个三维迷宫玩玩.要想画出三维的迷宫游戏 ...

  9. 如何实现模拟器(CHIP-8 interpreter) 绝佳杰作.

    转自 http://www.multigesture.net/articles/how-to-write-an-emulator-chip-8-interpreter/ How to write an ...

随机推荐

  1. Java开发架构篇:领域驱动设计架构基于SpringCloud搭建微服务

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言介绍 微服务不是泥球小单体,而是具备更加清晰职责边界的完整一体的业务功能服务.领域驱动 ...

  2. Spring 自动装配 byType

    自动装配 byType,这种模式由属性类型指定自动装配. Spring 容器看作 beans,在 XML 配置文件中 beans 的 autowire 属性设置为 byType.然后,如果它的 typ ...

  3. ShoneSharp语言(S#)软件更新13.7版

    ShoneSharp语言(S#)编辑解析运行器 软件更新13.7版 作者:Shone 近期在写博客过程中对S#进行增强,把语法规则更新到2.0版,并同步更新软件到ShoneSharp.13.7.exe ...

  4. layui加tp5图片上传实例

    <div class="layui-fluid"> <div class="layui-row"> <form class=&qu ...

  5. ajax 请求PHP返回json格式的处理

    php返回代码格式 public function json(){ if (request()->isAjax()){ $data = [ 'code'=>'1', 'msg'=>' ...

  6. 这次终于可以愉快的进行 appium 自动化测试了

    appium 是进行 app 自动化测试非常成熟的一套框架.但是因为 appium 设计到的安装内容比较多,很多同学入门都跪在了环境安装的部分.本篇讲述 appium 安卓环境的搭建,希望让更多童鞋轻 ...

  7. Kubernetes基本概念与架构

    Kubernetes,面向云原生应用的新“云平台” Kubernetes:以google Brog为原型 Kubernetes的成长历程: l  2014年,Kubernetes正式由google开源 ...

  8. 【Windows】win10:硬件良好,软件系统出错

    平台:戴尔G3, win10 现象:能正常开机,开机后前几分钟内能打开部分应用,经过大约两分钟后系统无法正常使用. 分析:此次问题出现再新购买的笔记本电脑中,鉴于电脑刚买,硬件坏的可能性很小,然而为了 ...

  9. 创建多线程的方式&Thread类的常用方法

    创建多线程的第一种方式:继承java.lang.Thread类 注意:1.一个线程只能执行一次start() 2.不能通过Thread实现类对象的 run()去启动一个线程 3.增加加一个线程,需要新 ...

  10. 小谢第2问:后端返回为数组list时候,怎么实现转为tree

    要求后端返回给我的list时候,在数组中定义有id , parentid, 可以用双重循环的方法,得到tree需要的数据结构,这样得到的数据就可以直接复制给树组件的data啦const oldData ...