將來的環(huán)球必是二進制的世界:七款有關(guān)編程的游戲

“每個人都應(yīng)該學(xué)習(xí)編程,它讓你明白應(yīng)該如何思考?!薄返俜颉滩妓?/p>

編輯周思沖2016年04月16日 10時00分
“每個人都應(yīng)該學(xué)習(xí)編程,它讓你明白應(yīng)該如何思考。”——史蒂夫·喬布斯

喬老先生會編程,算不上厲害的工程師,但這句話很有煽動力。不光喬老先生這樣想,計算機產(chǎn)業(yè)的重要性是整個美國社會的普遍共識,美國政府也始終堅持在普通民眾中大力推進計算機教育。甚至連奧巴馬都學(xué)過編程,用JavaScript畫出了一個矩形。再到最近,谷歌的Alpha GO更是讓我堅定了一個信念:將來的世界必是屬于硅基生物的。當然,更普遍的看法是:編程很好很重要,但跟我沒關(guān)系,讓工程師折騰去吧。

即使這么想,也不妨玩玩這些跟編程有關(guān)的游戲。本次介紹的游戲,超過半數(shù)是為兒童定制的。別瞧不起它們,其中很多關(guān)卡足以讓你焦頭爛額。你不但能從中學(xué)到基本的編程思想,在一個游戲里你甚至要寫真正的Swift代碼……OK,戴上你的黑框眼鏡,準備好可樂和薯片,我們開始。

編程機器人

本游戲的星級關(guān)卡相當有難度
本游戲的星級關(guān)卡相當有難度

iOS上這類為兒童提供編程思想啟蒙的游戲可謂汗牛充棟,《程序機器人》(Lightbot)是其中最具可玩性的一款。

我們的作者曾經(jīng)對這個游戲?qū)戇^一篇非常詳盡的評測 ,我就不炒冷飯了。游戲目的是使玩家真正理解循環(huán),條件判斷之類基本的控制結(jié)構(gòu),并用它們來解決問題。它的難度相當高,不斷試錯的焦慮如鯁在喉,和debug的感覺幾乎沒區(qū)別,可以說是一款自虐佳品。

?

駭客系列

游戲的菜單和界面,看著就很駭客
游戲的菜單和界面,看著就很駭客

《駭客》(Hack)系列是i273, LLC開發(fā)的系列解謎游戲,目前共推出了五作。系列劇情是相連的,其中《駭客逃亡:零》(Hack Run Zero)是《駭客逃亡》(Hack Run)的前傳。游戲目的是滲透進某個大公司的系統(tǒng)獲取信息。雖然你在游戲中扮演黑客,但并不需要你真的有信息安全方面的知識。只要懂一點類似LINUX的命令行操作方式,對“破解”事物抱有熱情,這個游戲就難不倒你。比較難對付的可能是一些西方典故。例如,在某關(guān)卡里,劇情任務(wù)是猜密碼習(xí)慣非常糟糕的用戶會使用什么密碼。答案是“Password”,這是西方人最敷衍的密碼。我在這里就試了很多諸如“123456”,“888888”之類的中式密碼,卡了很久。

選擇推薦《駭客時間》(Hack Time HD)、《駭客逃亡》和《駭客網(wǎng)絡(luò)》(Hack Net)的主要原因,是這幾個版本對iPad做了專門的適配。雖然全系列游戲都有iPhone版,但這個系列不太適合在手機上玩。不知道你有沒有聽說過“屏幕高度直接影響程序員工作效率”。這是真的,因為屏幕上能一次顯示越多行程序,程序員腦袋里的程序結(jié)構(gòu)就越清晰,不會顧此失彼。這個游戲也一樣,有的關(guān)卡需要你在多個系統(tǒng)、郵件里切換,要滾屏的話非常容易記混。在iPad的大屏上一次看清所有文本,能強烈提升游戲體驗。

?

代碼探索

我在游戲里制作的怪網(wǎng)頁,“他們的壞網(wǎng)站”
我在游戲里制作的怪網(wǎng)頁,“他們的壞網(wǎng)站”

在《代碼探索》(CodeQuest)中,你可以通過許多小游戲逐步掌握HTML和CSS的用法。你將用圖形化的方法完成一個屬于自己的網(wǎng)頁。這個游戲和之前幾個相比,最大的區(qū)別就是沒有回避“代碼”本身。雖然采用了圖形化的表現(xiàn)形式,但最終產(chǎn)出的代碼都是實際可用的。當然,搭網(wǎng)站沒這么簡單,個人主頁也過時了。但是這個游戲能讓你對網(wǎng)頁制作形成最基本的認識。

?

編程球

《編程球》(Kodable)制作得很粗糙。拎出來單獨講的原因是:我第一次遇見將編程和塔防結(jié)合起來的游戲。

你并不需要真的寫這些代碼
你并不需要真的寫這些代碼

游戲的前半部分如同《編程機器人》的低配版,但進入后半程就大不一樣了。在建造防御塔的時候,你能看見這些防御塔的代碼,而它們就是觀賞用的。大概作者的用意是讓玩家通過這些代碼直接領(lǐng)悟出“面對對象”是個什么東西。也許你天賦異稟,那還真可能在沒有基礎(chǔ)的情況下,從中悟出方法、對象和類。

Kodable Basics

Kodable Basics
414.66 MB  通用版  免費
iTunes下載

?

兒童代碼

《兒童代碼》(Code for Kids),聽上去非常低幼,但這是一個真刀真槍的編程游戲。游戲的主要內(nèi)容,就是讓你踏踏實實地寫Swift代碼。Swift是語法非常簡單的編程語言,游戲還特地對其進行了簡化來方便初學(xué)者。說是游戲,其實《兒童代碼》更像是一本互動教程和簡單的游戲引擎。你可以在游戲里掌握Swift的基本語法,并在游戲自帶引擎的基礎(chǔ)上寫出許多游戲關(guān)卡。游戲的最大缺點是UI設(shè)計,我試了整整一分鐘才發(fā)現(xiàn)要進入編程界面必須點擊關(guān)卡名左邊的小鉛筆,而直接點擊關(guān)卡名進入的是教程……

我把游戲自帶的關(guān)卡“愛麗絲夢游仙境”給改造了一下,使之更符合當代人的審美情趣。只要你愿意,可以做出更奇怪的關(guān)卡。

故事大意:愛麗絲遇到王子,愛麗絲吃掉王子,愛麗絲變得很大,然后走掉了
故事大意:愛麗絲遇到王子,愛麗絲吃掉王子,愛麗絲變得很大,然后走掉了

?

如果你沒接觸過編程,希望這些游戲能使你對編程產(chǎn)生一點興趣。當然,編程可能并不好玩:環(huán)境配置、文件配置、等待編譯之類的瑣事會很快耗光你的熱情。如果你像我一樣接觸過編程又最終放棄,這些游戲還能勾起淡淡的往日情愫……總之,編程沒那么可怕,喜歡就開始動手吧,為未來著想!可以想象,當天網(wǎng)降臨時,底層的作戰(zhàn)機器人不會配備語言識別系統(tǒng)。這時你就可以根據(jù)記住的一點計算機知識,熟練地大喊出: “0x530x690x720x540x680x690x730x570x610x790x21”

0

編輯 周思沖

zhousichong@chuapp.com

“我和我最后的倔強,握住頭像絕對不放”——清水健。

查看更多周思沖的文章
關(guān)閉窗口