Интерактивное программирование с CodeCombat
27 октября 2016
Рубрика: Обзоры и мнения.
Автор: Дониёр Зупаров, Шахзод Джураев.

code_27_10_2016

«Самая захватывающая игра для обучения программированию» — такое определение дается на главной странице сайта игры codecombat.com. Для кого предназначена игра CodeCombat? Авторы отвечают так: «Мы рекомендуем CodeCombat для учеников старше 9 лет. Какой-либо опыт программирования не требуется. Мы разработали CodeCombat так, чтобы он подходил и мальчикам, и девочкам». Я, как человек, дошедший почти до 33 уровня, полностью согласен с этим. CodeCombat — это игра, которая позволяет любому желающему научиться программированию бесплатно и абсолютно с нуля, предоставляя информацию в увлекательном и понятном виде.

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

Чтобы погрузиться в нее, вам понадобится лишь компьютер с доступом в Интернет и совместимый браузер. На сайте можно зарегистрироваться как ученик или как учитель.

code_27_10_2016_1

Главная страница сайта

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

Так как CodeCombat — это очень большая тема для обсуждения, я приведу здесь лишь обзор той части, что касается участия в игре как ученик.

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

code_27_10_2016_2

Окно игры

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

code_27_10_2016_3

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

code_27_10_2016_4

Экипирование персонажа

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

code_27_10_2016_5

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

    code_27_10_2016_6

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

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

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

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

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

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

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

Если вы дочитали до этого момента, тогда самое время сказать — если вы пройдете игру и достигнете высшего уровня, разработчики обещают реальный бонус: авторы игры обещают помочь с трудоустройством на работу в США. А для тех, кто уже уверенно себя чувствует в игре, есть также режим мультиплеера, в котором игроки могут соревноваться друг с другом.

В игре также присутствует возможность создания своих мини-игр, которыми можно поделиться с друзьями.

Подводя итог, можно сказать, что CodeCombat — это отличный проект, на который определенно стоит обратить внимание, если вы задумались заняться программированием. Изучение языка в ходе игры дает преимущество в усвоении материала и затягивает в процесс программирования. CodeCombat — это лучший путь к освоению программирования как для детей, так и для взрослых!

Авторы: Дониёр Зупаров, Шахзод Джураев, студенты 1 курса ТУИТ

Orphus system
В Telegram
В Одноклассники
ВКонтакте