一大波能提高編程技能的游戲
- 2016-06-15 14:07:00
- 楊通秀
- 轉貼:
- http://blog.jobbole.com/100733/
- 2291
有時候咱們程序員也需要娛樂或放松一下,但放松的同時,也可以做一些有益于技能成長的事情。今天就來看看這一大波能夠訓練大腦,并且提升編程能力的網站。
游戲
這是一個可以幫助你學習編程的并且非常贊的多人在線游戲,而不是一個游戲化的編程課程。
在 CodeCombat 中,你扮演一個英雄通過游戲中不同等級的冒險。第一關是 Kithard Dungeon ,里面涵蓋了編程的基本概念。整個旅程中你都面臨著編程的挑戰,如果通過了,你會解鎖下一關,并獲得經驗點,經驗點可以用來提升英雄的能力。
CodeCombat 吸引了很多年輕有抱負的程序員,根據游戲中的統計,62%的用戶年齡在18歲以下。
CodeCombat 支持6中不同的語言,包括:JavaScript、CoffeeScript、Lua、Python、Clojure 和 Io。該游戲涵蓋了廣泛的編程主題,如:字符串,變量,方法調用,矢量繪圖等。
2. Code Hunt
Code Hunt 是一個由Microsoft Research開發的 HTML5 科幻主題游戲。
在這個游戲中,你扮演一個代碼獵人,負責修復代碼,并使它它返回預期的結果??偣灿?4個等級需要你來完成。
Code Hunt 支持 Java 和 C# 兩種語言。你可以學習到包括算法、循環和條件表達式等編程概念。你也可以通過閱讀 Code Hunt 設計手冊 來擴展其他關卡。
3. CodinGame
CodinGame 對程序員來說是一個巨大的挑戰,如果你想提升編程技能,玩CodinGame是一種有趣的方式。
CodinGame 支持包括PHP、C、JavaScript在內的20多種編程語言。用戶界面功能強大,可以定制。例如,你可以選擇你的代碼編輯器的風格: “Emacs”、”Vim”、或 “Classic” (默認)。
游戲可以選擇單人游戲模式或多人模式,多人模式下,你可以與其他玩家共同解決 CodinGame 中的挑戰。
4. Screeps
Screeps 是一個為 JavaScript 程序員準備的大型多人在線游戲(MMO)。
這個游戲是一個開放的策略游戲,游戲中你控制的單位被稱為 creeps ,它可以幫你獲得資源、建立自己的領地等等。作為一個多人在線游戲,意味著你的 creeps 會被其他 creeps 所包圍。
通過編寫 JavaScript 來控制你的 creeps 。(Screeps = scripting your creeps)。學習如果玩該游戲,你可以查看文檔。
5. FightCode
在 FightCode 中,目的很簡單,就是創建一個能夠擊敗其他玩家機器人的機器人。
如何創建機器人?通過編寫 JavaScript 代碼。例如,當某個事件發生時,你可以通過 .rotateCannon() 方法來旋轉你的大炮。
在創建堅不可摧、支配世界的機器人之前,你首先需要 閱讀文檔來學習如何編寫一個機器人。
其他類似的網站:
Git Game—這是一個終端游戲,用來考察你的 Git 命令知識?。
Elevator Saga—你的任務是使用 JavaScript 編程控制電梯的運動。目標是要高效地接送乘客。
CodeChef—在這里你可以解決實際問題、參加不同的比賽,這些比賽每月都會進行。
Hacker.org 這里有一系列的謎題和測試,可以用來測試你的編程知識。為了通過這一系列的測試,你需要解決問題并做很多的分析工作。
Pex for fun—這是微軟開發的一個游戲,在這個游戲中你需要和其他的程序員進行比拼。而代碼就是你的武器。
Rankk—你需要解決一系列由易到難的問題。這個游戲是對 Pyramid 游戲的復刻,Pyramid里面有很多邏輯和數學問題。
TopCoder—在這個游戲里你不光可以解決問題,還可以獲取真金白銀。來自全世界知名IT公司的程序員在這里互相挑戰,為的就是贏得他們的獎品。
Google Code Jam—Google 大賽上已經解決的算法問題。在這里你可以自己試一試。
Python Challenge—玩家可以通過 Python 編程解決問題并提升等級。
《寓教于樂:Vim大冒險游戲》:玩游戲,學習 Vim
解謎
Lumosity—一組能夠訓練大腦的游戲,由科學家和游戲設計師一同開發。
Algorithm Geeks—一個交流討論算法的 Google 群組。
CodeKata—妙趣橫生的編程問題。
LessThanDot—一個專門論壇,程序員在這里發布一些比較困難的編程挑戰。
The Daily WTF—類似BYOD(Bring Your Own Device)模式,不過這里是BYOD(Bring Your Own Code)程序員們編寫他們自己的代碼片段放在這里,用來解決一些比較困難的問題。
Peking University JudgeOnline for ACIP/ICPC—這里包含了不同比賽中涉及到的不同的問題。你可以實時的解決問題并且查看結果,你的答案也會被驗證是否正確。
University of Valladolid Online Judge—與北京大學OJ平臺類似,但是包含了不同的問題。
Programming Praxis—這個博客每周都會出一些新的編程問題。
Project Euler—包含了很多復雜的數學問題,這讓發燒友們感到非常開心。
編程練習
4Clojure—在這里你可以通過解決一些不同難易程度的問題來學習 Clojure 。
Prolog Problems—你可以在這里練習邏輯編程。
Ruby Quiz—每周 Ruby 謎題。
Codingbat—由很多 Java 和 Python 的習題(難度各有不同)。
Cyber-dojo—在這里,你可以在在線評分系統的監督下進行編程練習。
Sphere Online Judge—各種各樣的編程問題。
Code Wars—8 種編程語言教學。
Rosalind—通過解決實際問題來學習算法和生物信息學。
面試前的準備練習
LeetCode—這個網站是為了幫助程序員準備面試而創建的。在這里你可以找到不同領域的典型問題。
Career Cup—程序員面試時最容易被問到的真實問題。
參考