锻炼编程能力的 10 个游戏:通关既巅峰!
一旦你知道自己要做什么,编程就很有趣,但达到这一点,可能是一次痛苦的经历。
这就是为什么在上课、听讲座、看教程之间,你应该留出时间玩一玩编程游戏。它们不仅是有趣的放松手段,还能让你亲身实践,这样你会学得更快,记住更多知识。
Robocode
Robocode 是个复杂的编程游戏,在这个游戏中,你可以编写机器人坦克的代码,让坦克们互相博弈。你要用 Java、Scala、C# 等编程语言,编写人工智能程序,驱动机器人。
Robocode 安装程序附带开发环境,内置机器人编辑器和 Java 编译器。你写的是真正的代码!尽管 Robocode 早在 2000 年就发布了,但它仍然定期更新和维护,因为它是开源的。
Codingame
Codingame 是一款类似游戏的 Web 应用程序,通过编写真实代码来解决难题和挑战。支持超过 25 种编程语言,包括 Java、C#、Python、JavaScript、Lua、Go、Rust 等。每一个难题或挑战都有一个主题,例如,编程炮塔击落附近的飞艇,是不是很有趣?
Codecombat
Codecombat 也是一个用于像游戏的谜题挑战类 Web 应用程序,只能通过编写代码来解决。不过 Codengame 更有娱乐性,Codecombat 有很强的教育意义,它有一个“课堂版”,老师可以用来帮助学生学习编码。目前有 3 种课程可供选择: 计算机科学、网络开发和游戏开发。
Codewars
Codewars 与其说是游戏,不如说是一种练习编码和解决算法挑战的游戏化学习方式。解决问题后你可以得到一定点数,点数值取决于你的解决方案的效率。Codewars 允许你查看他人提交的解决方案,方便学习和借鉴。
Codehunt
Codehunt 是一种可以使用 Java 或 C# 来玩的游戏。它的目标是教你学会编程语言的基础知识,从训练开始,到循环和字符串等主题,最后是排序、密码和编程难题等挑战。Codehunt 的有趣之处在于,它没有告诉你如何赢得每一项挑战。
Vim Adventures
Vim Adventures 是一个有趣的类似游戏的教程,用于学习如何使用 Vim,这是一个功能极其强大的文本编辑器,许多编程专家都喜欢用。然而,它不容易学,这就是为什么有这样的教程。虽然 Vim 本身不是一种编程语言,但掌握 Vim 可以帮你更高效地编码。
TIS – 100
TIS - 100 是一款与众不同的视频游戏,它迫使你学习并使用模拟的低级汇编代码来解决编程难题。这个游戏很难,它是开放式的,只要你没有怒到卸载它,就会发现它的价值。
Shenzhen I/O
Shenzhen I/O 与 TIS – 100 同属一家工作室的作品,这是一款益智游戏,你的任务是创建简化版电路,并编写电路上运行的简化版汇编代码。与 TIS – 100 相比,Shenzhen I/O 更容易学,更令人愉快,不过也同样复杂。
Human Resource Machine
在 Human Resource Machine 中,你要扮演一名办公室工作人员,通过将各种指令组合在一起来完成任务。从某种意义上来说,这款游戏要求通过可视化编程来解决难题,甚至涉及了逻辑流程和内存管理等概念——但以易于理解的、以办公室为主题的方式呈现。这是一个锻炼程序员大脑的好游戏。
Screeps
Screeps 是一款大型多人在线策略游戏,你要使用 JavaScript 来编码游戏中实体的行为,并为自己建立一个帝国。