“每个人都应该学习编程,它让你明白应该如何思考。”——史蒂夫·乔布斯
乔老先生会编程,算不上厉害的工程师,但这句话很有煽动力。不光乔老先生这样想,计算机产业的重要性是整个美国社会的普遍共识,美国政府也始终坚持在普通民众中大力推进计算机教育。甚至连奥巴马都学过编程,用JavaScript画出了一个矩形。再到最近,谷歌的Alpha GO更是让我坚定了一个信念:将来的世界必是属于硅基生物的。当然,更普遍的看法是:编程很好很重要,但跟我没关系,让工程师折腾去吧。
即使这么想,也不妨玩玩这些跟编程有关的游戏。本次介绍的游戏,超过半数是为儿童定制的。别瞧不起它们,其中很多关卡足以让你焦头烂额。你不但能从中学到基本的编程思想,在一个游戏里你甚至要写真正的Swift代码……OK,戴上你的黑框眼镜,准备好可乐和薯片,我们开始。
■ 编程机器人
本游戏的星级关卡相当有难度
iOS上这类为儿童提供编程思想启蒙的游戏可谓汗牛充栋,《程序机器人》(Lightbot)是其中最具可玩性的一款。
我们的作者曾经对这个游戏写过一篇非常详尽的评测 ,我就不炒冷饭了。游戏目的是使玩家真正理解循环,条件判断之类基本的控制结构,并用它们来解决问题。它的难度相当高,不断试错的焦虑如鲠在喉,和debug的感觉几乎没区别,可以说是一款自虐佳品。
- Lightbot : Programming Puzzles
- 48.49 MB 通用版
- 人民币:18
- iTunes下载
■ 骇客系列
游戏的菜单和界面,看着就很骇客
《骇客》(Hack)系列是i273, LLC开发的系列解谜游戏,目前共推出了五作。系列剧情是相连的,其中《骇客逃亡:零》(Hack Run Zero)是《骇客逃亡》(Hack Run)的前传。游戏目的是渗透进某个大公司的系统获取信息。虽然你在游戏中扮演黑客,但并不需要你真的有信息安全方面的知识。只要懂一点类似LINUX的命令行操作方式,对“破解”事物抱有热情,这个游戏就难不倒你。比较难对付的可能是一些西方典故。例如,在某关卡里,剧情任务是猜密码习惯非常糟糕的用户会使用什么密码。答案是“Password”,这是西方人最敷衍的密码。我在这里就试了很多诸如“123456”,“888888”之类的中式密码,卡了很久。
选择推荐《骇客时间》(Hack Time HD)、《骇客逃亡》和《骇客网络》(Hack Net)的主要原因,是这几个版本对iPad做了专门的适配。虽然全系列游戏都有iPhone版,但这个系列不太适合在手机上玩。不知道你有没有听说过“屏幕高度直接影响程序员工作效率”。这是真的,因为屏幕上能一次显示越多行程序,程序员脑袋里的程序结构就越清晰,不会顾此失彼。这个游戏也一样,有的关卡需要你在多个系统、邮件里切换,要滚屏的话非常容易记混。在iPad的大屏上一次看清所有文本,能强烈提升游戏体验。
- Hack Time HD
- 11.98 MB 部分设备不兼容
- 人民币:18
- iTunes下载
- Hack Run ZERO HD
- 7.64 MB 部分设备不兼容
- 人民币:18
- iTunes下载
- Hack NET HD
- 67.05 MB 部分设备不兼容
- 人民币:18
- iTunes下载
■ 代码探索
我在游戏里制作的怪网页,“他们的坏网站”
在《代码探索》(CodeQuest)中,你可以通过许多小游戏逐步掌握HTML和CSS的用法。你将用图形化的方法完成一个属于自己的网页。这个游戏和之前几个相比,最大的区别就是没有回避“代码”本身。虽然采用了图形化的表现形式,但最终产出的代码都是实际可用的。当然,搭网站没这么简单,个人主页也过时了。但是这个游戏能让你对网页制作形成最基本的认识。
- CodeQuest - Learn how to Code on a Magical Quest with Games
- 52.89 MB 通用版
- 免费
- iTunes下载
■ 编程球
《编程球》(Kodable)制作得很粗糙。拎出来单独讲的原因是:我第一次遇见将编程和塔防结合起来的游戏。
你并不需要真的写这些代码
游戏的前半部分如同《编程机器人》的低配版,但进入后半程就大不一样了。在建造防御塔的时候,你能看见这些防御塔的代码,而它们就是观赏用的。大概作者的用意是让玩家通过这些代码直接领悟出“面对对象”是个什么东西。也许你天赋异禀,那还真可能在没有基础的情况下,从中悟出方法、对象和类。
■ 儿童代码
《儿童代码》(Code for Kids),听上去非常低幼,但这是一个真刀真枪的编程游戏。游戏的主要内容,就是让你踏踏实实地写Swift代码。Swift是语法非常简单的编程语言,游戏还特地对其进行了简化来方便初学者。说是游戏,其实《儿童代码》更像是一本互动教程和简单的游戏引擎。你可以在游戏里掌握Swift的基本语法,并在游戏自带引擎的基础上写出许多游戏关卡。游戏的最大缺点是UI设计,我试了整整一分钟才发现要进入编程界面必须点击关卡名左边的小铅笔,而直接点击关卡名进入的是教程……
我把游戏自带的关卡“爱丽丝梦游仙境”给改造了一下,使之更符合当代人的审美情趣。只要你愿意,可以做出更奇怪的关卡。
故事大意:爱丽丝遇到王子,爱丽丝吃掉王子,爱丽丝变得很大,然后走掉了
如果你没接触过编程,希望这些游戏能使你对编程产生一点兴趣。当然,编程可能并不好玩:环境配置、文件配置、等待编译之类的琐事会很快耗光你的热情。如果你像我一样接触过编程又最终放弃,这些游戏还能勾起淡淡的往日情愫……总之,编程没那么可怕,喜欢就开始动手吧,为未来着想!可以想象,当天网降临时,底层的作战机器人不会配备语言识别系统。这时你就可以根据记住的一点计算机知识,熟练地大喊出: “0x530x690x720x540x680x690x730x570x610x790x21”
,