15個(gè)邊玩游戲邊學(xué)編程的網(wǎng)站
前言
經(jīng)常聽到有朋友說击儡,學(xué)習(xí)編程是一件非常枯燥無味的事情蝠引。其實(shí)阳谍,大家有沒有認(rèn)真想過,可能是我們的學(xué)習(xí)方法不對(duì)螃概?
比方說矫夯,你有沒有想過,可以通過打游戲來學(xué)編程吊洼?
今天我想跟大家分享幾個(gè)網(wǎng)站训貌,教你如何通過邊打游戲邊學(xué)編程!
1冒窍、Coding Games
一邊玩游戲递沪,一邊挑戰(zhàn)編程難題。Coding games 支持包括 PHP综液、C款慨、JavaScript 在內(nèi)的 20 多種編程語言。用戶界面功能強(qiáng)大意乓,可以定制樱调。
例如,你可以選擇你的代碼編輯器的風(fēng)格:Emacs届良、Vim、Classic圣猎。
如果你想提升編程技能士葫,玩 Coding games 是一種有趣的途徑。
網(wǎng)址:www.codingame.com
2送悔、CodeCombat(極客戰(zhàn)記)
CodeCombat 是一款網(wǎng)頁編程游戲慢显。這款編程游戲借鑒了游戲的很多設(shè)計(jì)元素爪模,游戲劇情十分豐富。
當(dāng)你打開 CodeCombat 網(wǎng)站荚藻,你不會(huì)覺得這是一個(gè)讓你看不懂的代碼學(xué)習(xí)網(wǎng)站屋灌,因?yàn)樗木W(wǎng)站外觀看起來就像是一個(gè)魔獸爭霸風(fēng)格的線上游戲,而且當(dāng)你實(shí)際玩玩看应狱,你會(huì)發(fā)現(xiàn)過程真的就是英雄要去打怪共郭、尋寶與解謎,只是搭配了程序語言的學(xué)習(xí)疾呻。
CodeCombat 能夠?qū)W習(xí) Python除嘹、JavaScript、Lua岸蜗、CoffeeScript尉咕、Clojure 等不同程序語言,這些語言能夠運(yùn)用到游戲設(shè)計(jì)璃岳、網(wǎng)頁應(yīng)用年缎、App 的開發(fā)上。
CodeCombat 網(wǎng)址:cn.codecombat.com
極客戰(zhàn)記(中國版 CodeCombat)網(wǎng)址:codecombat.163.com
3铃慷、Screeps
如果你想學(xué)習(xí) JavaScript单芜,那 Screeps 是一個(gè)很好的選擇,Screeps 是一個(gè)為 JavaScript 程序員準(zhǔn)備的大型多人在線游戲 (MMO)枚冗。
這個(gè)游戲是一個(gè)開放的策略游戲缓溅,游戲中你控制的單位被稱為 “creeps”,它可以幫你獲得資源赁温、建立自己的領(lǐng)地等等坛怪。作為一個(gè)多人在線游戲,游戲中你的 creeps 會(huì)被其他玩家的 creeps 包圍股囊。
網(wǎng)址:screeps.com
4袜匿、Checkio
Check iO 是一個(gè)基于瀏覽器的游戲,你需要使用 Python 或 JavaScript 來解決問題才能將游戲進(jìn)行下去(需要登錄)稚疹。
網(wǎng)址:checkio.org
5居灯、Vim Adventures
顧名思義,這個(gè)網(wǎng)站讓你通過玩游戲來學(xué)習(xí) Vim内狗。
網(wǎng)址:vim-adventures.com
6怪嫌、Cyber Dojo
Cyber-dojo是一個(gè)提供給程序員們練習(xí)寫程序的地方。支持 JavaScript柳沙、Java岩灭、Python、PHP赂鲤、Ruby 等語言噪径。
網(wǎng)址:www.cyber-dojo.org/
源代碼:https://github.com/JonJagger/cyber-dojo
7柱恤、Code Monkey
CodeMonkey 是一款非常富有童趣的網(wǎng)頁編程游戲,玩家通過編程向怪獸小猴子傳達(dá)指令找爱,幫助小猴子吃到香蕉就可以過關(guān)了梗顺。
CodeMonkey 以游戲闖關(guān)的方式進(jìn)行教學(xué),總共有 300 多個(gè)關(guān)卡车摄,涉及到編程的各種概念寺谤。
網(wǎng)址:www.playcodemonkey.com
8、Elevator Saga
電梯編程游戲练般,需要一步步解決問題過關(guān)矗漾。比如說第一關(guān)是在 60 秒內(nèi)運(yùn)輸 15 個(gè)人。( 編程語言為 JavaScript )
網(wǎng)址:play.elevatorsaga.com/
代碼:https://github.com/magwo/elevatorsaga
9薄料、Codewars
在戰(zhàn)斗中進(jìn)行學(xué)習(xí)敞贡。和其他人一起在真實(shí)的編程挑戰(zhàn)中提升技巧,支持 JavaScript摄职、Python誊役、C#、Java谷市、Python 等語言(支持的語言見下圖)蛔垢。
網(wǎng)址:www.codewars.com
10、Ruby Quiz
Ruby Quiz 是一個(gè)面向 Ruby 程序員的每周編程挑戰(zhàn)項(xiàng)目迫悠,目前有 156 個(gè)測驗(yàn)項(xiàng)目鹏漆。
網(wǎng)址:rubyquiz.com/
11、Git-Game
Git-game 是一個(gè)基于終端的游戲创泄,它用來教授 git 中的那些非骋樟幔酷的功能。游戲的主題內(nèi)容是搜尋鞠抑,通過 git 命令來找到線索饭聚,解開謎題。
網(wǎng)址:www.git-game.com
12搁拙、Hacker.org
hacker.org 挑戰(zhàn)賽是一系列的拼圖秒梳、敲磚塊、測試和智力題箕速,用來測試你的黑客能力酪碘。要通過這一系列的考驗(yàn),你需要學(xué)會(huì)解密盐茎、編碼婆跑、滲透等等技能,揭開重重迷霧庭呜。
網(wǎng)址:https://www.hacker.org/
13滑进、Code Hunt
Code Hunt 是一個(gè)由 Microsoft Research 開發(fā)的 HTML5 科幻主題游戲。在這個(gè)游戲中募谎,你扮演一個(gè)代碼獵人扶关,負(fù)責(zé)修復(fù)代碼,并使它它返回預(yù)期的結(jié)果数冬。Code Hunt 支持 Java 和 C# 兩種語言节槐。你可以學(xué)習(xí)到包括算法、循環(huán)和條件表達(dá)式等編程概念拐纱。
網(wǎng)址:www.codehunt.com
14铜异、Fight Code
在 FightCode 中,通過編寫 JavaScript 代碼秸架,你可以創(chuàng)建一個(gè)能夠擊敗其他玩家機(jī)器人的機(jī)器人揍庄。
網(wǎng)址:http://fightcode.io
15、Human Resource Machine
Human Resource Machine 是一款非常有意思的移動(dòng)端游戲东抹。這款游戲由粘粘世界(World of Goo)的設(shè)計(jì)者和制作小小煉獄(Little Inferno)的團(tuán)隊(duì)共同制作蚂子,游戲雖是走解謎路線,但玩法相當(dāng)新穎:玩家將扮演一個(gè)從基層做起的員工缭黔,需要通過指令代碼來編寫一條條程序食茎,完成每個(gè)階段的任務(wù),最終走上職場巔峰馏谨。
主人公需要將郵件按照要求進(jìn)行分發(fā)别渔。游戲注重計(jì)算機(jī)硬件實(shí)現(xiàn)方面的技術(shù)。在游戲中非常形象的表現(xiàn)出了內(nèi)存惧互,寄存器哎媚,輸入輸出等概念,以及如何利用這些硬件來實(shí)現(xiàn)基本的運(yùn)算壹哺、排序等功能抄伍。
這款游戲界面十分有意思,畫風(fēng)清奇管宵,任務(wù)具有較大的挑戰(zhàn)性截珍,適合有一定編程基礎(chǔ)或者年齡稍大的孩子玩。
網(wǎng)址:tomorrowcorporation.com
其他類似的編程游戲網(wǎng)站
CodeChef?:在這里你可以解決實(shí)際問題箩朴、參加不同的比賽岗喉,這些比賽每月都會(huì)進(jìn)行。
Pex for fun?:這是微軟開發(fā)的一個(gè)游戲炸庞,在這個(gè)游戲中你需要和其他的程序員進(jìn)行比拼钱床。而代碼就是你的武器。
Rankk?:你需要解決一系列由易到難的問題埠居。這個(gè)游戲是對(duì) Pyramid 游戲的復(fù)刻查牌,Pyramid 里面有很多邏輯和數(shù)學(xué)問題事期。
TopCoder?:在這個(gè)游戲里你不光可以解決問題,還可以獲取真金白銀纸颜。來自全世界知名IT公司的程序員在這里互相挑戰(zhàn)兽泣,為的就是贏得他們的獎(jiǎng)品。
Google Code Jam?:Google 大賽上已經(jīng)解決的算法問題胁孙。在這里你可以自己試一試唠倦。
Python Challenge:玩家可以通過 Python 編程解決問題并提升等級(jí)。
Lumosity?:一組能夠訓(xùn)練大腦的游戲涮较,由科學(xué)家和游戲設(shè)計(jì)師一同開發(fā)稠鼻。
Algorithm Geeks?:一個(gè)交流討論算法的 Google 群組。
CodeKata?:妙趣橫生的編程問題狂票。
LessThanDot?:一個(gè)專門論壇候齿,程序員在這里發(fā)布一些比較困難的編程挑戰(zhàn)。
The Daily WTF?:類似 BYOD(Bring Your Own Device) 模式苫亦,不過這里是 BYOD(Bring Your Own Code) 程序員們編寫他們自己的代碼片段放在這里毛肋,用來解決一些比較困難的問題。
Peking University JudgeOnline for ACIP/ICPC?:這里包含了不同比賽中涉及到的不同的問題屋剑。你可以實(shí)時(shí)的解決問題并且查看結(jié)果润匙,你的答案也會(huì)被驗(yàn)證是否正確。
University of Valladolid Online Judge?:與北京大學(xué) OJ 平臺(tái)類似唉匾,但是包含了不同的問題孕讳。
Programming Praxis:這個(gè)博客每周都會(huì)出一些新的編程問題。
Project Euler?:包含了很多復(fù)雜的數(shù)學(xué)問題巍膘,這讓發(fā)燒友們感到非常開心厂财。
4Clojure?:在這里你可以通過解決一些不同難易程度的問題來學(xué)習(xí) Clojure 。
Prolog Problems?:你可以在這里練習(xí)邏輯編程峡懈。
Codingbat?:有很多 Java 和 Python 的習(xí)題(難度各有不同)璃饱。
Sphere Online Judge?:各種各樣的編程問題。
Rosalind?:通過解決實(shí)際問題來學(xué)習(xí)算法和生物信息學(xué)肪康。
LeetCode?:這個(gè)網(wǎng)站是為了幫助程序員準(zhǔn)備面試而創(chuàng)建的荚恶。在這里你可以找到不同領(lǐng)域的典型問題。
Career Cup?:程序員面試時(shí)最容易被問到的真實(shí)問題磷支。
Kodable:Kodable 是一款適用于 5 歲及以上兒童的教育型 iPad 游戲谒撼,適合為兒童進(jìn)行編程啟蒙。
Lightbot :Lightbot 是一款移動(dòng)端游戲雾狈,玩家通過控制機(jī)器人的移動(dòng)在固定位置點(diǎn)亮燈泡廓潜。
Box Island:Box Island 是一款經(jīng)典且屢獲殊榮的移動(dòng)端編程冒險(xiǎn)游戲,這款游戲在為孩子們帶來令人興奮的冒險(xiǎn)體驗(yàn)的同時(shí), 也向他們介紹編程的基礎(chǔ)知識(shí)辩蛋。