Интерактивное программирование с CodeCombat

Игру CodeCombat создали Джордж Сейнс, Скотт Эриксон и Ник Винтер, в 2008 году написавшие приложение Skritter, для изучающих японский и китайский языки. Работая над приложением, Сейнс переживал, что не может сразу проверить свои идеи на практике, одновременно наблюдая, как его сосед не слишком быстро учится программировать в Codecademy. На основании этих двух факторов Сайнс сделал вывод, что медленные методичные занятия значительно менее эффективны, нежели проверка навыков на практике, и решил исправить ситуацию.
Чтобы погрузиться в нее, вам понадобится лишь компьютер с доступом в Интернет и совместимый браузер. На сайте можно зарегистрироваться как ученик или как учитель.

Главная страница сайта
Учителя могут зарегистрировать свой класс, получить специальные инструменты для обучения программированию и мониторить прогресс своих учеников. Ученик может проходить игру самостоятельно или с классом. Также, если вы были в игре как ученик, вы можете позже изменить свой статус на учителя или присоединиться к классу, если у вас есть его код.
Так как CodeCombat — это очень большая тема для обсуждения, я приведу здесь лишь обзор той части, что касается участия в игре как ученик.
Все действие игры происходит онлайн. Игра напоминает собой обычные RPG-игры, за одним главным исключением — управление персонажем и игрой осуществляется не привычным образом (нажатие клавиш для совершения действий и т.д.), а путем ввода программного кода. Этот код и определяет поведение вашего персонажа — вы программируете его действия! Все задания сопровождаются полезными комментариями, а также доступны советы для прохождения уровня. Никаких трудностей при прохождении уровней не возникает благодаря тому, что разработчики сделали повышение трудности заданий максимально плавным.

Окно игры
Для выполнения некоторых заданий требуется особый инвентарь, предоставляющий специальные возможности программирования. Его можно приобрести за кристаллы, которые зарабатываются прохождением заданий.

Магазин предметов

Экипирование персонажа
После простой регистрации, выбора языка программирования (JavaScript, Python, CofeeScript, Lua) и героя, перед вами открывается игровой мир CodeCombat. Он представляет 6 основных и 4 побочные локации.

Каждая локация предоставляет знания по определенным темам. Локации открываются по мере прохождения игры. Кратко о локациях и их темах:


Тут происходит знакомство с выбранным языком программирования, а также первые простые задания. На этой локации вы узнаете, что такое: Синтаксис кода, Методы, Параметры, Строки, Циклы и Переменные.

Здесь нас знакомят с операторами ветвления, свойствами объектов, операторами сравнения. Задания становятся сложнее, но и увлекательнее.

Тут мы учимся писать математические вычисления на языке программирования, использовать счетчики, условные циклы (while, for) и прерывание цикла (break, continue), знакомимся с массивами (array), сравниваем их.

Как можете видеть, этот уровень еще не открыт для меня, но это ненадолго. Тут нам откроются тайны литералов, удаленных вызовов метода, for-циклы, функ­ции, рисование и деление с остатком.

На этой локации мы познаем продвинутые техники. Мне не известно, что это, но это придает дополнительный стимул для прохождения! В какой еще игре можно обучиться продвинутым техникам программирования?

Последняя, самая таинственная локация. Заинтригованы?

Побочные локации позволяют получить основные навыки создания web-страниц и разработки небольших игр.

Если вы дочитали до этого момента, тогда самое время сказать — если вы пройдете игру и достигнете высшего уровня, разработчики обещают реальный бонус: авторы игры обещают помочь с трудоустройством на работу в США. А для тех, кто уже уверенно себя чувствует в игре, есть также режим мультиплеера, в котором игроки могут соревноваться друг с другом.
В игре также присутствует возможность создания своих мини-игр, которыми можно поделиться с друзьями.
Подводя итог, можно сказать, что CodeCombat — это отличный проект, на который определенно стоит обратить внимание, если вы задумались заняться программированием. Изучение языка в ходе игры дает преимущество в усвоении материала и затягивает в процесс программирования. CodeCombat — это лучший путь к освоению программирования как для детей, так и для взрослых!
Авторы: Дониёр Зупаров, Шахзод Джураев, студенты 1 курса ТУИТ

Top News