近来人们日益认识到编程的重要性,并发现它逐渐成为简历上另一种不可或缺的技能。本文将会介绍一些有助于通过游戏化学习编程的教学平台。基于以上原因,有越来越多关注未来趋势的人注意到了编程,也因此我们能看到,目前出现了许许多多旨在通过直观有益的方式教授编程的教学平台。为了达成目的,他们采用了游戏化的教学方式。
Codecademy
订阅: 免费
语言: HTML/CSS, Python, PHP, Ruby, APIs, Javascript, jQuery
针对级别: 初学者
这个平台是互联网上最热门、或许也是获得赞誉最多的游戏化学习平台。重要的是,它是完全免费的。
这个平台囊括了包括Javascript、jQuery、HTML/CSS、Python、PHP、Ruby和APIs等诸多语言的教学,总计有100种课程,每种都包含5到20节课。尽管譬如web与游戏设计之类的复杂内容也有涉及,但这个平台主要针对的是完全不了解什么是“if语句”的初学者。Codecademy有一套徽章和成就系统,学习者完成的课程越多,就能获得越多的徽章和点数。
Codeschool
订阅: 付费
课程: Ruby, JavaScript, HTML/CSS, Python, iOS, Git, Databases, Electives
针对级别: 中级水准到经验丰富的开发者
Codeschool的座右铭:“最好的学习方式就是实践”。它与Codecademy的不同之处在于:Codeschool将视频内容、在浏览器中编程以及游戏化结合在一起,完美地搭配起来。与Codecademy类似,Codeschool也会向学习者发放徽章、点数与成就。重要的是:这个平台是与Open Badges合作的,而后者会收集许多来自不同平台的徽章,并将其展示给更多人。
Treehouse
订阅: 付费(有免费试用)
课程: Android, C#, CSS, Databases, Design, Development, Digital Literacy, Game Development, HTML, iOS, JavaScript, PHP, Flask, Swift, Python, Ruby, WordPress, Java, Web Design, PHP, WordPress, 包括研讨会及课程。
针对级别: 初学者到高级水平的开发者
除了徽章、成就与视频之外,Treehouse还提供了测试。此外,学习者还能参加编程挑战——必须快速将之前在视频中所学到的内容运用出来。观看视频与完成测试都能获取点数与徽章,Treehouse的终极任务是帮助潜在的雇主查看应聘者的职业技能。
CodinGame
订阅: 免费
课程: C, C++, Java, C#, PHP, Python, Ruby, Javascript, Objective-C, Go, Haskell, Scala, Perl, Dart, Bash, Pascal, Groovy, Clojure, VB.NET, Lua, F#, OCami, Swift, Rust
针对级别: 初学者到高级水平的开发者
大多数游戏化平台都使用了徽章、成就与点数系统,但CodinGame则不然,它在学习过程中使用了真正的游戏。与Codecademy等平台不同,CodinGame对学习者的奖励是内在性质的。其课程包含20多种编程语言,一切都是实时的,学习者在浏览器上编程的同时,就能看到屏幕一角的游戏界面。
CodeCombat
订阅: 免费/特殊级别付费(9.99美元)
课程: Python, JavaScript
针对级别: 初学者到中级水平的开发者
与CodinGame类似,Codewars也是通过实际游戏让学习者学习编程的。游戏的部分是按照幻想RPG动漫游戏的风格来设计的,屏幕分为两部分,分别是代码编辑器与迷宫游戏——有一系列命令操纵用户的化身小人,如果代码输入错误,就会扣掉一定的生命点数,错误太多的话,小人就会死掉。每个级别包含不同的任务,比如搜集宝石、打败怪兽以及找出通往下一关的路。
Checkio
订阅: 免费
课程: Python
针对级别: 高级开发者
这个平台的课程只限于Python编程语言,学习者可以通过完成挑战来学习编程,不过还有另一个目标:在整个社区中分享疑难编程问题,以寻求解决方案。Checkio希望开发者与其他社区成员分享问题,以便群策群力,共同解决问题。Checkio让用户真正解决编程问题,而Codecademy就如Avramenko所称:只能让大家读读代码。
FightCode
订阅: 免费
课程: JavaScript
针对级别: 初学者
这个平台的主要目标是通过机器人创建让用户学习JavaScript,学习者需要创建一个机器人,来击败敌手的机器人,创建每个新机器人都能让用户提高自己的JavaScript技能。这个平台有游戏排行榜,用户可以追踪到自己的进步与成就。到目前为止,已经有2.7万个机器人参与了游戏。
Robocode
订阅: 免费
课程: Java
针对级别: 初学者到高级开发者
Robocode平台同样需要学习者创建东西,打败敌手,不过这次换成了坦克,使用的语言是Java和.NET,战斗实时显示在屏幕上,创建一台坦克很快也很容易,但想要将它改造成一台杀戮机器,则需要数千行代码。如果这台坦克写得很糟糕,就更容易被击伤。
Code Hunt
订阅: 免费
课程: Java与C#
针对级别: 初学者到高级开发者
这个看起来很有意思的游戏化平台是由微软研究院开发的,为大家学习Java和C#提供了平台。一开始用户可能会误以为游戏的目标是“寻找、存储并获取尽可能多的代码片段”,但稍后就会明白,关键在于以优雅的方式改写代码片段,以便返回预期的结果。此外,这也是一个创建私人与公共游戏的机会,每个游戏都是基于一组(且仅一组)参数。
Dungeons and Developers(地下城与开发者)
订阅: 免费
课程: HTML, CSS, AJAX, jQuery, APIs等等
针对级别: 中级到高级的开发者
对RPG游戏的爱好者来说,看到这个标题就会想起一款经典的RPG游戏《龙与地下城》(D&D),猜得没错!与这款游戏类似,这个游戏化平台的创建者使用技能树来展示用户的进步情况。在技能树上的每个技能点都有自己独特的图标,这些技能包括HTML、CSS、AJAX等等。
Ruby Warrior(Ruby战士)
订阅: 免费
课程: Ruby on Rails
针对级别: 中级开发者
在这里可以学到Ruby编程知识,就如名称暗示的那样,游戏中的战士小人必须战斗并开启下一关,其中得分越多越好,并且每个关卡都会增加新功能。通过游戏,学习者可以提高自己关于循环、条件及其它方面的知识了解,不妨一试。
Hack n Slash
订阅: 通过Steam
课程: 黑客技术
针对级别: 初学者
这个平台的游戏灵感来自于塞尔达系列——通过在游戏中对属性进行重调,让用户学到编程的概念。用户需要重写游戏代码,并根据需要进行调整。在游戏中,可以调整的内容包括生物的行为、与世界互动的方式。基本上来说,这款游戏无需遵循规则。
不仅在编程领域,在生活的其他领域,游戏化概念也是很新的概念。幸运的是,包括IT领域在内,有越来越多的人开始重视游戏化的价值。由于这种方式的确在提高积极性与创造力方面表现优秀,因此有越来越多新的游戏化平台如雨后春笋般涌现。