Лучшие игры, обучающие программированию
Codecombat
Codecombat — это довольно популярная браузерная игра, которая “заточена” под обучение азам программирования в группе учеников с учителем (имеется даже специальная версия Classroom Edition), но подойдет и пользователям-одиночкам. По сути Codecombat представляет собой набор задачек и пазлов, решить которые можно только с помощью программного кода. Позволяет изучить азы Python, JavaScript, CoffeeScript, а также языка Lua, который применяется в гейм девелопменте (разработке игр). Одной из сильных сторон CodeCombat является тот факт, что игрокам доступны три разных курса с уклоном в компьютерные науки, веб-разработку и гейм-девелопмент.
Robocode
Одна из самых известных, старых и при этом имеющих культовый статус игр для программистов. Мы уже писали о Robocode в статье, посвященной применению Java в сфере искусственного интеллекта.
Robocode — это популярная игра на основе Java с открытым исходным кодом, которая позволяет пользователям изучать принципы Java-программирования и не только (в игре можно писать код на Scala, C# и других языках). Она также хорошо подходит для изучения базовых принципов робототехники и искусственного интеллекта.
В Robocode игрок создает собственного робота-танка, программирует его стратегию и разрабатывает программный интеллект, соревнуясь с роботами других пользователей. Впервые созданная еще в 2000-м году, когда игры обучающие программированию еще были редкостью, Robocode и по сей день является одной из самых популярных и известных игр для кодеров.
Codingame
Codingame — еще одна популярная браузерная игра, одним из главных преимуществ которой является поддержка огромного количества языков (более 25), включая Java, C#, Python, JavaScript, Lua, Go, Rust и другие. Предлагает достаточно разнообразные тематические задачи и паззлы, решать которые, как раз благодаря их разнообразию, не надоедает.
Еще одной сильной стороной Codingame является мультиплеер — играть можно с друзьями и коллегами, по игре также регулярно проводятся международные соревнования.
Screeps
Screeps — это MMO стратегия, в которой игрок должен использовать JavaScript для управления игровыми сущностями и построения собственной империи. Несмотря на то, что Screeps, как большинство MMO, является платной ($9 в месяц), базовая версия позволяет играть в одиночку на приватном сервере сколько угодно, а также дает 30 дней бесплатного доступа к игре на официальном сервере.
Vim Adventures
Vim Adventures — это простенькая, но увлекательная игра-туториал для обучения использованию Vim, необычного текстового редактора с широким функционалом, который любят про-разработчики. Многие эксперты по программированию советуют новичкам освоить Vim, так как этот редактор помогает писать более эффективный и, главное, понятный код.
Codewars
Codewars — популярная браузерная игра-набор головоломок и пазлов, позволяющих практиковаться в написании кода и решении алгоритмических задач. За решение каждой задачи пользователь получает очки, количество которых зависит от способа решения — чем оно более эффективное, тем больше очков. Одной из самых лучших фич Codewars является возможность изучать варианты решения задач, предложенные другими пользователями — таким образом можно учиться подходам к алгоритмическим проблемам у более опытных и подкованных коллег.
Игра поддерживает огромное количество языков, включая Java — 21 ЯП в основной версии, плюс еще 17 менее распространенных ЯП в бета-версии.
Shenzhen I/O
Shenzhen I/O является симулятором разработчика электроники — инженера-схемотехника. Это хорошая, и весьма хардкорная, надо заметить, игра-головоломка, в которой игрок должен создавать упрощенные схемы и писать код сборки, который работает на указанных схемах. Игрок занимается проектированием разного рода устройств, получая концепт-документацию с кратким перечислением задач на электронную почту.
CodeMonkey
CodeMonkey — это простая онлайн-игра с приятным визуальным оформлением, ориентированная на детей младшего и среднего школьного возраста, но подходящая и для взрослых благодаря забавному и затягивающему игровому процессу. Предназначена для пользователей вообще без навыков в программировании и учит базовым аспектам и понятиям кодинга. В CodeMonkey используется язык программирования под названием CoffeeScript.
Human Resource Machine
Human Resource Machine — еще один очень качественный пример игры про программирование с увлекательным набором головоломок, где игрок использует свои навыки кодинга, чтобы управлять маленькими офисными работниками, которые должны перемещать объекты между различными областями. Игра хороша тем, что подходит не только программистам, но и всем остальным, ведь она тренирует логику, навыки управления памятью и нахождения решений. Также Human Resource Machine может быть и отличной развивающей игрой для детей, с нее можно начинать изучение программирования или продолжать овладение навыками кодинга после совсем простенькой CodeMonkey.
В 2018-ом студия Tomorrow Corporation, разработчик Human Resource Machine, выпустила продолжение под названием 7 Billion Humans. Сиквел выполнен в той же стилистике, не изменился и подход к геймплею. 7 Billion Humans отлично подойдет тем, кому приглянулась Human Resource Machine, предлагая игрокам еще больше разнообразных задачек и пазлов.
TIS-100
В TIS-100 игроки должны решать различные типы головоломок, соревнуясь друг с другом в оптимизации кода на игровом многопотоковом ассемблере. Игра выполнена в необычной и стильной эстетике компьютерных руководств 80-х годов (которая, впрочем, многих наверняка отпугнет).TIS-100 — это параллельная компьютерная архитектура, состоящая из синхронных неоднородных связей. TIS-100 идеально подходит для приложений, требующих обработки сложных потоков данных, таких, например, как автоматическая финансовая торговля, сбор массивов данных и анализ человеческого поведения.
TIS-100 также позволяет игрокам создавать собственные головоломки в трех типах песочниц.
Хорошие игры для изучения программирования, которые не попали в топ-10
Ну и напоследок игры обучающие программированию, которые не попали в наш топ, но определенно заслуживают хотя бы упоминания.-
Простая, но увлекательная игра для изучения основ CSS. Она бесплатна, и включает в себя 32 уровня, сложность которых возрастает по мере прохождения.
-
Хороший вариант для тех, кто задался целью освоить непростой язык Ruby. Подойдет как совсем зеленым “рубистам,” так и тем, кто уже овладел основами этого языка.
-
CheckIO — это стратегическая игра в футуристическом сеттинге с версиями для изучения JavaScript и Python.
-
Еще один занимательный сборник задач и головоломок, который поддерживает сразу ряд языков, а потому может выступить альтернативой почти всем играм для изучения программирования. Среди языков, которые поддерживает Cyber Dojo, есть Java, Ruby, JavaScript, PHP, Python и другие.
-
Приятная игра для изучения Java и C#, разработанная исследовательским подразделением Microsoft. Задачей игрока является анализировать и исправлять фрагменты кода.
Если мы забыли упомянуть какие-то хорошие игры про программирование, которые достойны быть в данном топе — пишите об этом в комментариях.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ