Как обучать детей программированию. Программирование для детей - методики обучения в игровой форме, языки и специальные программы. Языки программирования для детей

Интересоваться игровой разработкой начинают дети всё более юных возрастов. Информации в наше время можно найти предостаточно, пожалуй, её даже с избытком. Это руководство поможет юным читателям или их родителям познакомиться с миром разработки игр. И что же это, собственно, значит? Во-первых, я сосредоточусь на технологиях, подходящих новичкам. Во-вторых, я не буду строить догадок об уровне ваших технических познаний, допуская, что он может быть нулевым. Поэтому, если будет казаться, что я считаю вас недостаточно умными или говорю снисходительно – это не так! И наоборот, если что-то будет не до конца понятно, дайте мне знать, и я постараюсь всё прояснить.

Слишком юный возраст – это сколько?

Наверное, самый распространённый вопрос. Сколько лет должно быть мне (или моему ребёнку), чтобы знакомиться с игровой разработкой? Ответить на него невозможно, поскольку все дети разные. На самой нижней ступени (при использовании подходящих инструментов) по-настоящему заинтересованный 6-летний новичок уже может достичь определённых успехов. На другой стороне спектра в 12 лет для этих успехов уже должно быть достаточно образовательной базы и умственных способностей. Реальный возраст получается где-то посередине.

Для начала нужно усвоить несколько критически важных вещей.

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

Второе – управление ожиданиями. Здесь мы теряем большую часть потенциальных разработчиков, независимо от возраста. Разработка игр – не самое сложное в мире занятие, но оно достаточно комплексное. Ваш ребёнок не будет в скором времени работать над масштабными современными играми, вроде Call Of Duty или NHL, не будет делать MMO-проекты. Начинать нужно с чего-то очень скромного и постепенно двигаться дальше.

Если ребёнок убеждает себя, что собирается делать новый Minecraft, его ждёт очень болезненная неудача. С другой стороны, установка «когда-нибудь я сделаю новый Minecraft» может отлично сработать. Тут очень важно понимать разницу. Как и с любым другим навыком, этот следует развивать постепенно. Попытка взяться за слишком серьёзное дело приведёт лишь к провалу и разочарованию. Для справки, сам я начал программировать лет в 8 на Atari BASIC.

Что вообще такое игровая разработка?

Здесь мы слегка углубимся в технические аспекты. Игровая разработка – обобщающий термин, подразумевающий множество навыков, направленных на создание одного большого творения. Представьте, что вы занимаетесь производством автомобилей. Одного навыка для этого недостаточно, вам нужны инженеры, дизайнеры, сборщики, тестировщики и множество других специалистов, чтобы сделать одну машину. Однако весь перечень необходимых задач может выполняться одним человеком. Есть немало успешных игр, написанных, нарисованных и выпущенных одним человеком. Впрочем, важно понимать, что это редкие случаи. Я говорю о том, что весь процесс разработки не сводится к одной задаче, их несколько. И если ребёнку по душе что-то одно, другое может и не понравиться. Важно помнить это при выборе программ, проверяя наличие образцов графики и звука, чтобы не приходилось абсолютно всё делать самостоятельно.

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

Для примера возьмём «Монополию». Во-первых, делаем игру: определяем дизайн игрового поля, придумываем правила для кубиков, пишем игровые карточки и т.п. После этого создаём игровой контент: изображения на поле, рисунки на карточках, пластиковые домики и прочее.

С видеоиграми всё точно так же. Первая задача обычно называется программированием, вторая состоит из наполнения игры графикой, анимацией, звуком и музыкой. Для всего этого требуются совершенно разные навыки, но без них, как правило, не обойтись. Наша статья сосредоточится на программировании – когда дети интересуются разработкой игр, они думают именно об этом. Если ребёнок хочет рисовать графику для игр, то скорее всего уже и так делает наброски в блокноте! И это, кстати, правильный подход, ведь разница между «художником» и «игровым художником» минимальна.

Что такое программирование?

Итак, когда речь идёт об игровой разработке, скорее всего имеется в виду программирование. Что это такое? Проще всего сказать, что это искусство объяснять компьютеру, что он должен делать. В контексте разработки игр это значит делать вещи, вроде «если игрок нажимает кнопку «вверх», сделать то» или «если здоровье падает до нуля, сделать это».

Как вам программировать игры – это уже вопрос непростой, и с ним вам предстоит помучиться. Ещё важнее понимать, что здесь всё зависит от вашего ребёнка. Все мы думаем по-разному и по-разному выражаем свои идеи. Кто-то может выбрать стиль, совершенно непривлекательный для другого.

По большому счёту, существует три способа говорить компьютеру, что делать (зачастую дело сводится к их комбинации):

Распространённый подход среди новичков, да и среди разработчиков вообще (к примеру, в популярном коммерческом движке Unreal Engine 4 есть интерфейс визуального программирования Blueprints). Вы формируете игровой экран, перетаскивая элементы, впоследствии связывая их подобием блок-схемы. Если ваш ребёнок мыслит визуальными образами, это лучший выбор.

Скриптовые языки

Здесь вы объясняете компьютеру задачу с помощью небольших текстовых файлов. Зачастую вы всё равно пользуетесь визуальным редактором, как на картинке выше, но даёте компьютеру понять, что нужно делать, не заполняя текстовые поля и не выстраивая схемы, а с помощью кода.

Этот кусочек текста указывает компьютеру загрузить изображение «whale.png» и вывести его на экран.

Традиционные языки программирования

Наконец, многие игры пишутся на традиционных языках: C++, Java, C# и других. Сразу скажу прямо, что не советую юным игроделам начинать с традиционных, или, если точнее, компилируемых языков по ряду причин.

Главный вопрос, который может у вас возникнуть: чем отличаются скриптовые и компилируемые языки? В основном различия касаются технических подробностей, выходящих за пределы данной статьи, но в целом всё сводится к комплексности. Работа с компилируемым языком затрагивает множество вещей, о которых не нужно думать в скриптовых языках: компиляция (превращение написанного вами текста во что-то, понятное компьютеру), линковка (тут в двух словах и не объяснить) и многое другое.

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

В конечном итоге вы часто будете встречать средства разработки, совмещающие визуальное программирование и скриптовые языки.

IDE, библиотека, что???

Ладно, это последний вводный момент. В тексте будет много не самых понятных терминов и выражений, так что я вкратце их поясню.

Язык. Имеется в виду язык программирования. Мы общаемся между собой на разных языках, и с компьютером тоже можно говорить на разных. На примере выше показан язык Lua.

IDE. Интегрированная среда разработки (Integrated Development Environment) – приложение, отвечающее сразу за множество задач. Не все описанные программы включают IDE, то есть для разных работ вам может понадобиться разный софт. Обычно среда разработки содержит текстовый редактор, язык программирования и ряд других инструментов.

Библиотека. Представьте, что это некто, делающий за вас кучу работы. Как правило, даже «простые вещи», вроде вывода на экран, не являются частью языка. Эти вещи создают другие люди, делая их доступными в виде библиотек. В некоторых случаях (в GameMaker или Construct) всё это уже собрано для вас воедино. В Lua, к примеру, вам требуется самому выбирать библиотеку. У каждого подхода есть свои плюсы и минусы. Gamemaker многое упрощает для начинающих, зато Lua позволяет сменить библиотеку на более удобную.

Спрайт. Это используемая в игре графика, например, персонаж игрока. Спрайт может быть картинкой или содержать множество анимаций. Точное значение спрайта в каждом движке своё, но в игре это всегда видимый движущийся объект. В Super Mario Brothers это Марио, черепахи, огненные шары и т.д. Сам мир при этом – небо, трубы и прочее – не обязательно состоит из спрайтов.

HTML 5. Здесь не всё может быть понятно сразу. HTML 5 – это последняя версия HTML, языка разметки веб-страниц. При загрузке сайта в браузере компьютера или телефона вы видите HTML-документ. Но HTML5 – это ещё и обобщённый термин для множества технологий, на которых держится работа веб-сайтов. Сюда входит сам HTML, CSS (ещё один язык, определяющий внешний вид страниц) и JavaScript, скриптовый язык, отвечающий за логику. Люди часто пользуются HTML, HTML5 и JavaScript как взаимозаменяемыми понятиями, хотя технически это не совсем верно. HTML5 может использоваться для создания игр, и с ним не обязательно работать в самом браузере.

Отладчик. Когда игра не работает, как надо, бывает непросто выяснить, почему. В некоторых пакетах для этого существует так называемый отладчик, средство для выявления проблем или «багов». Для новичков это довольно продвинутый инструмент, но когда в нём возникает необходимость, отладчик нельзя переоценить.

Средства игровой разработки, подходящие для детей

Итак, переходим к непосредственной сути статьи – инструментам, способным познакомить вашего ребёнка с миром игровой разработки. Это ни в коем случае не всеобъемлющий список! В каждом пункте я расскажу, что входит в комплект программы, на примере покажу, как она работает, опишу плюсы и минусы, укажу цену, если она есть и приведу ссылки на учебную литературу. Осталось отметить один момент… каждый из вариантов может быть полезен, здесь нет «лучшего» выбора. Выбирайте на основе предпочтений вашего ребёнка. Если первый выбор не сработал, пробуйте что-то другое.

Список построен без определённого порядка.

Scratch

Это проект, финансируемый Массачусетским технологическим институтом и направленный на обучение программированию детей от 8 до 16 лет. Программа появилась на свет в 2006, и с тех пор собрала вокруг себя крупное сообщество. Особый упор делает на привлекательность для всей семьи. Для работы Scratch нужен только браузер, вы просто заходите на сайт и начинаете программировать. Scratch включен в вводный курс по компьютерным технологиям Гарварда и Йельского университета CS50 . Для сохранения результатов требуется регистрация, но она простая, и даже не требует подтверждения по электронной почте.

Scratch относится к категории средств визуального программирования. Ребёнок переносит актёров на сцену и управляет ими с помощью Lego-образных блоков программирования. Блоки выступают неплохим аналогом структуры настоящих языков программирования, так что впоследствии в них будет проще разобраться. Документации доступно много, а примеров программ буквально тысячи.

Пожалуй, наиболее привлекательной особенностью Scratch является наличие всего необходимого контента для начала работы. При этом есть и возможность загружать собственные или скачанные звуки и графику, что упрощает переход от программирования к созданию ассетов или наоборот.

Выше показан скрипт, привязанный к синей собаке. Он состоит из двух частей, первая срабатывает по нажатию зелёного флага. Собака появляется на экране в определённом месте, затем шаг за шагом двигается влево. Второй скрипт ожидает столкновения с другой собакой, после чего возвращает пса в начальную позицию, меняет сцену и скрывает объект. У каждого спрайта отдельный скрипт. Блоки выбираются в палитре программирования.

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

Scratch – это решение «всё-в-одном», для работы вам больше ничего не понадобится. В комплекте присутствует множество сцен, фонов и звуков.

Scratch абсолютно бесплатен и существует за счёт спонсорской поддержки.

Книги (да, есть на русском):

  • Первая книга юного программиста. Учимся писать программы на Scratch — Юлия Торгашева
  • Творческие задания в среде Scratch. 5-6 класс. Рабочая тетрадь — Юлия Пашковская
  • Программирование для детей. Иллюстрированное руководство по языкам Scratch и Python — Кэрол Вордерман

У Scratch есть и приложение для iPad под названием ScratchJr для детей 5-8 лет. Тоже совершенно бесплатное. Ничего не нужно покупать или скачивать, для знакомства с программой не нужно даже регистрироваться, так что Scratch можно назвать наиболее доступным вариантом из списка.

Construct2

Construct2 – ещё один движок, основанный на визуальном программировании. Игры создаются в интерфейсе с перетягиванием элементов, а логика контролируется системой событий наподобие блок-схем. Если функциональности недостаточно, можно создавать собственные плагины при помощи JavaScript, хотя это уже довольно сложно и вовсе не обязательно – Construct2 задуман так, чтобы всё управлялось событиями. Конечный результат работы представляет собой HTML5, его можно экспортировать на разные платформы, включая мобильные устройства (Android, iOS, Windows Mobile), браузеры и настольные системы.

Construct2 куда более комплексный инструмент в сравнении со Scratch, что говорит о двух важных вещах. Во-первых, крутая кривая обучения делает его неподходящим для маленьких детей, и он не делает упора на обучающий подход. С другой стороны, это относительно простой инструмент уже не для изучения азов, а для создания игр. Это значит, что ваш ребёнок не скоро столкнётся с какими-либо ограничениями. В Construct2 создано немало коммерческих игр.

По Construct2 есть много доступной документации, в том числе подробная справочная информация и руководство в формате PDF . Сообщество очень активное, за поддержкой всегда можно обратиться на форум.

Construct устанавливается на компьютер под управлением Windows. Mac на данный момент не поддерживается.

Так выглядит программирование в Construct2. Здесь изображён код, описывающий реакцию игрового персонажа на входные данные; взято из заготовленного примера простого шутера.

Позволяют быстро добавить объекту предопределённое поведение.

Construct2 – это решение «всё-в-одном», для работы вам больше ничего не понадобится. С самого начала он не изобилует игровыми ресурсами, зато есть доступный для бесплатного скачивания увесистый пакет ассетов (осторожно, ссылка прямая, архив весит 38 Мб). Для платных версий предусмотрены дополнительные ассеты.

Если захотите делать свои плагины, вам понадобится JavaScript SDK (доступен бесплатно) и инструмент для редактирования текста, поскольку в Construct его нет.

Construct2 доступен в разных версиях:

  • Бесплатная версия – созданные игры можно запускать только в браузере, меньше ассетов и ряд ограничений на сложность игр. Ограничения не должны быть большой проблемой, по крайней мере, сначала.
  • Персональная версия – стоит $129, можно делать игры для iPhone, Android и настольных систем, больше звуков, музыки, спрайтов и других ассетов.
  • Бизнес-версия – по сути, то же, что и персональная, только стоит дороже и требуется к приобретению после превышения порога прибыли в $5000 (если у вас возникает такая проблема, это хорошо!).

Книг на русском я не нашел. Есть перевод вводного курса . Уроки Construct2 на русском .

Game Maker

GameMaker – гибридная система «всё-в-одном», объединяющая визуальное программирование с собственным скриптовым языком GML. Изначально игры работают только на Windows, но в платной версии их можно создавать и для браузеров, iOS, Android, Windows Phone и других платформ.

Программирование в GameMaker может строиться на блок-схемах на манер Construct2. Есть возможность писать код на скриптовом языке GML. Это сразу и плюс и минус. С одной стороны, это гибкая система, с другой стороны, разбираться в ней сложнее. Поскольку это собственный язык GameMaker, многие полученные навыки окажутся не столь полезны при переходе к другому средству разработки. Конечно, основные концепции программирования от языка к языку не меняются, так что это не особо серьёзная проблема.

Помимо необходимых ассетов в GameMaker есть буквально всё, что только может понадобиться, правда, качество инструментов варьируется. В дополнение к программированию вы можете самостоятельно создавать графику, звук и уровни – всё это в одном приложении. Среди игр, созданных в GameMaker есть очень успешные проекты – например, оригинальная версия Spelunky и Hotline Miami (не для детей).

Это одна из самых сложных программ в списке, и браться за неё лучше не раньше подросткового возраста. Зато для детей постарше она предлагает хорошую гибкость и возможность делиться играми и в конечном итоге продавать их. Всё зависит от конкретного ребёнка, так что тут сложно что-то советовать, просто имейте в виду, что по сравнению с тем же Scratch здесь всё в разы сложнее.

GameMaker включает всё, что вам нужно, будь то редактирование кода, создание и редактирование изображений, дизайн карт или что угодно ещё. Есть в комплекте и встроенный отладчик. Правда, в стандартной версии не так уж много примеров работ. На самом деле, их вообще нет. Впрочем, благодаря активному сообществу, в сети без труда можно найти кучу примеров и уроков. Качество материалов может быть самым разным, и сами Yoyo Games ими не занимаются, так что хорошие уроки придётся ещё поискать.

С лицензиями GameMaker не всё так просто, поскольку ценовая структура поменялась, но не все материалы успели обновиться.

  • Начальная версия сильно ограничивает использование ресурсов и скриптов. Впрочем, обновление до версии Standard требует только подтверждения почты, на которую вам вышлют ключ продукта.
  • Ещё есть версия Professional за $100 с функционалом для совместной работы (вам пока не требуется). Главное отличие этой версии в том, что можно покупать отдельные модули для поддержки экспорта на другие платформы ($200 за каждую). Например, если вы хотите разрабатывать под Android и iOS, придётся в сумме заплатить $500.
  • И, наконец, версия Master со всеми доступными платформами стоит $800.

Для начинающего разработчика хватит и простой зарегистрированной версии. Если поглядываете на Professional, она нередко бывает на распродажах в Steam.

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

Lua и LÖVE

Lua – скриптовый движок, а LÖVE – библиотека для создания игр. Изначально Lua был языком программирования для «не-программистов» и быстро стал популярен в качестве скриптового языка для коммерческих игр, таких, как эти . У данного варианта есть одно большое преимущество перед, скажем, GML. Lua используется повсюду и многим знаком, так что знать его будет полезно. В плане изучения язык довольно прост.

LÖVE – это библиотека для создания игр с помощью Lua. Она предоставляет практически весь функционал, необходимый для создания 2D-игр – вывод графики, проигрывание звука, управление входными данными, загрузку файлов и т.д.

LÖVE и Lua недостаточно самих по себе, вам понадобится ещё текстовый редактор для написания и правки скриптов, софт для создания графики и записи звука, редактор карт для дизайна уровней и подобные вещи. К счастью, всё это есть в бесплатном доступе, и ниже я приведу примеры. Только скачивать всё придётся по отдельности. Вместе с LÖVE не идёт никаких ассетов, но с этим вам помогут ресурсы вроде Open Game Art и FreeSound . Опять же, всё надо скачивать самостоятельно.

Главный минус LÖVE – отсутствие поддержки мобильных платформ. В данный момент библиотека позволяет делать игры только для компьютеров, хотя в будущем обещают и мобильные устройства.

Библиотека LÖVE содержит Lua, поэтому сначала идём только сюда , а потом сюда за документацией для новичков. Однако, вам ещё нужен текстовый редактор и программы для графики и звука.

Для простого набора текста есть два популярных варианта: Notepad++ и Sublime Text .

Впрочем, для разработки на Lua я бы советовал пользоваться – это скорее IDE с поддержкой автодополнения кода, отладки и подобных вещей. Ах, да – ещё она бесплатная.

Для создания уровней и карт отлично подходит бесплатный редактор Tiled .

Об альтернативах – Lua в качестве скриптового языка используется во многих популярных средствах разработки, например, в Corona , Gideros и Marmalade Quick . Все они сложнее LÖVE, поэтому её я и рекомендую. Однако, они отлично демонстрируют, насколько полезным может быть знание Lua.

Lua и LÖVE бесплатны, за ZeroBrane вы платите, сколько пожелаете.

Только одна из книг описывает программирование именно на LÖVE.

  • Программирование на языке Lua — Роберто Иерузалимски

Поиск материалов по библиотеке затрудняет распространённость слова love, так что добавляйте в запросы lua.

Python и PyGame

Это ещё одна комбинация языка и библиотеки. PyGame во многом похожа на LÖVE и дружелюбна к новичкам. В ней используется Python, популярный скриптовый язык, хотя он более известен в мире 3D-графики, чем в разработке игр. Часто используется IT-профессионалами для автоматизации задач, поэтому знание Python пригодится даже за пределами игровой разработки. На этом языке написано несколько известных игр .

PyGame обладает ожидаемой функциональностью, справляясь со звуком, графикой и вводом. Вам нужно позаботиться о редакторе текста и создании ассетов. Впрочем, в отличие от LÖVE, кое-какие ассеты и образцы уже идут в комплекте с PyGame.

Пользуйтесь советами для LÖVE, большинство указанных инструментов помогут и тут.

Конечно, не считая ZeroBrane – в качестве аналога советую ознакомиться с PyCharm (есть бесплатная версия). Это не самый простой редактор, но вы всегда можете работать в обычном Notepad++ или Sublime Text.

Python и PyGame бесплатны. У PyCharm есть бесплатная версия.

Stencyl – это набор средств визуального программирования, именующий себя «самым простым и быстрым способом создания игр», что вполне может быть правдой! По функциональности он схож с Construct2, программируете вы, конструируя сцену и снабжая её поведениями. Это решение «всё-в-одном» со встроенным графическим редактором, хотя возможность импорта изображений тоже присутствует. Писать скрипты в Stencyl нельзя, но можно создавать расширения с помощью языка Haxe, если вам не хватает функционала программы. Впрочем, это уже может выходить за пределы текущих способностей ребёнка – в этом случае пригодятся расширения, доступные в магазине.

Stencyl работает на Windows, Linux и Mac и по умолчанию создаёт только Flash-приложения. Другие платформы, в том числе iOS и Android, доступны за отдельную плату. Программа не может похвастаться массой ассетов в комплекте, но обеспечивает быстрый доступ к ним, плюс онлайн-справка весьма хороша.

Это решение «всё-в-одном». Если вы не углубляетесь в программирование расширений на Haxe, всё, что вам нужно, уже либо есть в комплекте, либо доступно по ссылкам прямо из приложения.

  • В Stencyl можно работать бесплатно, однако результатом будут только Flash-игры. Выпущенные игры снабжаются заставкой Stencyl во время загрузки.
  • За $99 доступна версия Studio, в которой можно создавать приложения для настольных систем. Заставка Stencyl в них отсутствует.
  • За $199 можно делать игры для iOS и Android.

Lego Mindstorm

Позвольте сразу же уточнить, что это очень, очень дорогая штука. Но если ваш ребёнок интересуется робототехникой или просто ярый фанат Lego, это подходящий способ познакомить его с программированием. Mindstorm Lego – это конструктор для создания роботов. В комплекте идут программируемые блоки, задающие поведение робота. Mindstorm предлагает постепенный прогресс в обучении: сначала робот собирается из кусочков конструктора, затем можно учиться управлять им при помощи приложения (для iPad или настольных систем), а потом уже начинать программировать логику.

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

Данный пункт выбивается из общей темы, но я решил упомянуть Mindstorm, как средство обучения программирования, удобное для детей, предпочитающих творить что-то своими руками. Наблюдение причинно-следственных связей на примере материальных объектов может быть очень полезным.

Готовый огнедышащий дракон Mindstorm, месяц на сборку

Дорого! Очень дорого!

  • Базовый набор с неполной локализацией можно найти от 22000 рублей
  • За дополнения придется заплатить еще больше
  • Из США доступен за 350 долларов плюс доставка

В электронном виде (ссылки на pdf-файлы) доступны руководство и учебный материал .

  • Конструируем роботов на Lego Mindstorms Education EV3 — Валерий Сафули, Наталия Дорожкина

Это уже не совсем «программирование игр», но определённо удобный способ знакомства со множеством навыков, которые для него нужны. И да, если бы мои родители подарили мне такое в детстве, я бы номинировал их на премию «Родитель года». Вот дочка подрастёт, куплю ей такой… хотя, может, это будет подарок для меня самого?

Особые упоминания

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

Моды для Minecraft

Если ваши дети играют в компьютерные игры, они уже могут быть знакомы с Minecraft. Моддинг – это модифицирование оригинальной игры, и в этом плане Minecraft особенно популярен. Моды могут быть удобным средством изучения программирования – или, по крайней мере, мотивировать к нему. Модами для Minecraft занимается очень много людей. Минус в том, что пишутся они на Java, а этот язык не подходит для детей младшего возраста. Впрочем, при должном интересе к игре, попробовать стоит. Узнать больше можно .

GameSalad

Это инструмент визуального программирования, наподобие Stencyl и Construct2. Использовался для создания коммерческих игр, доступна бесплатная версия, платные открывают доступ к другим платформам. Лично я GameSalad не пользовался.

Codea

Codea – приложение для разработки игр для iPad на самом iPad. Стоит $10, использует Lua и предоставляет собственную, простую в изучении библиотеку. Есть редактор кода, отладчик и средства для подключения к компьютеру. Можно подключиться к Mac и сделать вполне пригодную для выпуска игру. Набирать текст на iPad совсем невесело, так что беспроводная клавиатура практически необходима. Включает массу примеров и отлично подходит для детей, у которых имеется iPad (особенно, когда это всё, что у них есть).

Kodu или Project Spark

Это игра про создание игр. По факту, это игра, которую можно модифицировать, превращая во что угодно. Kodu – язык визуального программирования от Microsoft. Project Spark – модифицированная версия Kodu, вышедшая для XBox One. Это далековато от обычного программирования, но многие идеи (как и конечный результат!) те же самые.

Code Combat

Интересная концепция – браузерная игра, где персонаж управляется программированием. По мере продвижения по игре вас учат более сложным вещам. По сути, вы учитесь программировать, играя в игру. Изначально создавалась для обучения Javascript, но потом были добавлены и другие языки. Я убеждён, что она полностью бесплатна, так что вам ничего не стоит попробовать.

Alice

Alice – это средство для обучения программированию с интегрированной средой разработки. Вот собственные слова авторов:

Alice – инновационная трёхмерная среда, в которой можно без труда работать с анимацией, рассказывая истории, создавая игры или видео. Это свободно распространяемое обучающее ПО, предназначенное для знакомства учеников с объектно-ориентированным программированием. Оно учит фундаментальным концепциям программирования на примере создания анимированных роликов и простых видеоигр. В Alice виртуальный мир наполнен трёхмерными объектами (люди, животные, машины), и ученики пишут программы, с помощью которых они анимируются.

Alice поддерживается Университетом Карнеги – Меллон и абсолютно бесплатна.

RPGMAKER

RPGMaker Ace – это продукт, схожий с GameMaker, предназначенный для создания конкретного типа игр, относящихся к жанру jRPG. Его лозунг, буквально: «Достаточно простой для ребёнка, достаточно мощный для разработчика». С помощью RPGMaker сделано несколько коммерческих игр. Отлично подойдёт вашему ребёнку, если он поклонник жанра. Стоит $70, но часто бывает на распродажах в Steam.

Заключение

Конечно, я не углублялся в подробности, но зато прошёлся по большей части доступных вариантов. Если вы думаете, что стоит что-то добавить в список, дайте мне знать! Я постарался сделать статью понятной людям с любым уровнем знаний, но, разумеется, мог с этим не справиться. Если что-то непонятно, напишите. Главное, что не стоит забывать – все дети разные, и один и тот же подход работает не для всех. Выбирайте, что на ваш взгляд лучше подойдёт вашему ребёнку, и если что-то будет не получаться, знайте, что всегда есть уйма других вариантов!

  • Перевод

Программирование сейчас очень популярно. По всему миру 36 миллионов детей принимают участие в мероприятиях движения «Час программирования». Цель этих мероприятий – помочь детям стать активными, а не пассивными пользователями технологий, а также получить знания, которые в будущем могут помочь устроиться на хорошую работу в нашем все более и более техническом мире.

Даже если ваши дети не хотят в будущем зарабатывать на жизнь программированием, базовое понимание принципов программирования развивает мышление и, в дальнейшем, ребенок лучше справляется с решением возникающих задач. Билл Гейтс когда-то сказал: «Если вы учитесь создавать программы, это развивает ваш разум, помогает вам лучше мыслить и создает образ восприятия вещей. В целом, я думаю, что человеку это будет полезно вне зависимости от сферы его деятельности».

Такие платформы, как Scratch и Alice позволяют детям (и взрослым) создавать собственные игры и анимации, используя упрощенные методы программирования. Однако не всем детям это интересно. И вот для таких детей существует множество игр, которые обучают базовым принципам программирования в веселой и доступной форме.


Мы отобрали несколько доступных вариантов, включая некоторые игры, которые до сих пор находятся в разработке, поэтому вам не придется их лихорадочно искать. Эти игры доступны на разных платформах – iOS, Android, ПК, Mac, есть даже настольные игры – при этом многие из них, и это огромный плюс, распространяются бесплатно.

Lightbot и Lightbot Jr.

Для кого: возраст 4-8 лет (Lightbot Jr), 9+ (Lightbot)
Платформа: Веб-браузеры, iOS, Android
Цена: Бесплатно (браузер), $3 (iOS/Android)
Больше информации: Браузерная игра, iTunes, Google Play

Экспертное мнение: «При кажущейся простоте, Lightbot освещает некоторые интересные аспекты продвинутого программирования» - Фритц Руэр, доцент компьютерных наук, Уилламеттский университет, Орегон.


Подпись: Во многих школах игра Lightbot используется для обучения основам программирования. Эта игра используется даже в некоторых университетах.

Lightbot – это игра-головоломка о программировании, созданная Дэнни Ярославским, канадским студентом. Цель игры – заставить робота подсветить все голубые плитки на 3D-решетке. Сложность состоит в том, что это нужно сделать в один подход, создав для робота серию команд.

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

Вы можете играть в бесплатную версию игры, в которой предлагается час игрового времени. Причем бесплатно можно играть как на компьютере, так и на вашем мобильном устройстве. А если этого недостаточно, то две полные версии Lightbot для разных возрастных групп сейчас продаются в iTunes и Google Play.

Code Monkey Island

Для кого: возраст 8+
Платформа: настольная игра
Цена: $40+
Больше информации: веб-сайт игры Code Monkey Island, Kickstarter
Экспертное мнение: «Code Monkey Island – это потрясающе веселая игра, которая знакомит детей с программированием» - педагог и активист по развитию технологий Фил Шапиро.


Подпись: Code Monkey Island не сделает из ваших детей программистов по мановению волшебной палочки, однако обучит их основам программирования.

Житель Бруклина Радж Сидху захотел объяснить детям основы программирования в увлекательной игровой форме. Он выбрал совершенно нетехническое решение для решения высокотехнической задачи и внедрил основы бинарной логики и условные команды в семейную настольную игру.

Играть в Code Monkey Island достаточно просто, да и времени игра занимает немного – всего лишь около 45 минут. Игроки используют карточки с инструкциями типа «Каждую обезьяну передвинуть на три клетки, НЕ наступая на скалы» для того, чтобы двигать свои отряды обезьян по острову.

Сидху выбрал формат настольной игры, потому что такие игры объединяют семью. «Я хотел создать что-то, во что могут играть дети, их родители, бабушки и дедушки. Однако при этом я хотел помочь детям через игру реализовать их способности к обучению», говорит он на своей странице Kickstarter.

Игра Code Monkey Island оказалась успешным проектом на Kickstarter. В августе эта игра должна уже получить распространение. Вы можете забронировать один экземпляр этой игры для себя, перечислив в фонд проекта на Kickstarter $40 или больше.

Kodable

Для кого: возраст 5-8 лет
Платформа: iOS
Цена: Бесплатно ($7 – Pro-версия)
Больше информации: веб-сайт игры Kodable, iTunes
Экспертное мнение: «Игра Kodable развивает навыки программирования, в результате чего программированию могут научиться даже маленькие детки. Для обучения им даже не нужно уметь читать» - Терри Эйкхольц, преподаватель программы K-5 для одаренных детей, Техас


Подпись: Соучредитель Грехен Хюбнер сообщает, что в Kodable могут играть даже двухлетние дети.

Kodable – это игра-лабиринт, в которой 105 уровней. Эта игра помогает обучать детей таким основам программирования, как условия, циклы, функции и отладка.

В игре совершенно не используется текст, поэтому в нее могут играть даже маленькие дети. Герои игры очень яркие, они похожи на забавных пришельцев и очень нравятся детям.

«Взрослые так боятся программирования, они считают программирование ужасным и сложным делом», говорит соучредитель игры Kodable Грехен Хюбнер в интервью TechRepublic. «Забавно, что многие взрослые недооценивают возможности своих детей. И то, что мы предлагаем детям возможность решать разные задачи в таком раннем возрасте, доказывает, насколько же дети умны».

В бесплатной версии Kodable 45 уровней. В самом приложении можно докупить разные уровни и конфигурации. В Pro-версии, которая стоит $7, также есть уроки по расширению словарного запаса и инструкции для обучения.

Robozzle

Для кого: возраст 6+ (и взрослые)
Платформа: веб-браузер, iOS, Android, Windows phone
Цена: Бесплатно (браузерная версия), $0-$2 (мобильная версия)
Больше информации: браузерная версия игры, iTunes, Google Play, Магазин приложений Windows
Экспертное мнение: «Игра Robozzle позиционируется как социальная игра-головоломка, но я воспринимаю ее как веселый и интересный способ обучения программированию. И, возможно, с помощью этой игры получится заинтересовать детей программированием» - Альфред Томпсон, учитель информатики в старшей школе.


Подпись: На первый взгляд игра Robozzle очень простая. Но вскоре игрок сможет убедиться, что все не так уж просто.

Если вы ищете занятие для детей постарше (или для себя), попробуйте поиграть в Robozzle. Это игра-головоломка, которую в свободное время создал программист компании Microsoft Игорь Островский.

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

В браузерную версию этой игры можно поиграть бесплатно (используя Silverlight), также игроки могут создавать, голосовать и комментировать новые уровни.

Игра Robozzle доступна на iOS, Windows Phone 7 и Android. Цены варьируются.

Cargo-Bot

Для кого: для детей от 5 лет и взрослых
Платформа: iOS
Цена: Бесплатно
Больше информации: iTunes
Экспертное мнение: «Отличное приложение для iPad для обучения программированию. С помощью него обучал своих двух детей» - Майк Лоуренс, преподаватель и соучредитель Google Teacher Academy.


Подпись: Игра Cargo-Bot для iPad была создана с помощью приложения Codea

Cargo-Bot – это первая игра, написанная специально для iPad. Простые уровни этой игры подходят для детей от 5 лет, однако дальше начинаются действительно сложные уровни.

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

«Я хотел создать игру, смысл которой – перемещать коробки по заводу. Забудьте, что на самом деле вы программист», сказал разработчик игры Руи Виана в интервью Fast Company.

SpaceChem

Для кого: для детей от 10 лет и взрослых
Платформа: ПК, Mac, Linux, iOS, Android
Цена: Бесплатная демо-версия, $7 (Steam), $3 (iOS/Android)
Больше информации: веб-сайт игры SpaceChem, Steam, iTunes, Google Play
Экспертное мнение: «Я думаю, что SpaceChem – это лучшая из существующих игр по обучению программированию» - Нил Браун, исследователь в сфере компьютерного образования, Кентский университет, Великобритания.


Подпись: SpaceChem используют многие школы в образовательном процессе, но при этом это – игра.

Игра SpaceChem – это сочетание программирования и псевдохимии в условиях научной фантастики. Однако эта игра получила превосходные отзывы после ее выпуска в 2011 году.

Эта игра достаточно сложная, поэтому заставит подумать как учеников старшей школы, так и взрослых. Цель SpaceChem – построить механизм для борьбы с монстрами, используя такие понятия программирования, как исполнение заявок, циклы, переходы и подпрограммы. Компания-разработчик Zachtronics Industries пояснила, в чем же именно ценность этой игры.

«SpaceChem – это игра, которую я бы хотел дать себе в 12 лет, чтобы сходить с ума, решая головоломки», так написано в образовательном блоге Gaming to Learn. «Когда вы слышите, что люди говорят о важности обучения написанию кода – они говорят об этой игре. Такие игры учат игрока думать».

Robot Turtles

Для кого: 3-8 лет
Платформа: настольная игра
Цена: $25
Больше информации: веб-сайт игры Robot Turtles, Kickstarter
Экспертное мнение: «Начните учиться как можно раньше! Это потрясающе! Будущее теперь выглядит гораздо более вдохновляющим» - Джон Леджер, председатель правления, T-Mobile


Подпись: Игра в Robot Turtles.

Эта настольная игра, которая обучает детей программированию, в прошлом году собрала на Kickstarter $600000. При том, что сначала требовалось финансирование в $25000.

Игра оказалась востребованной. И это неудивительно, ведь Robot Turtles обучает основам программирования через карточки-инструкции, которыми управляется прохождение черепашек через лабиринт. Первоначальные 25000 копий игры были распроданы в один миг. Дети должны использовать ограниченный синтаксис, последовательность команд, а также проводить отладку при совершении ошибки. Создатель игры, Дэн Шапиро, говорит, что понимание, как играть, появляется за несколько секунд.

«Я очень верю в то, что программирование – это суперсила, которую вы можете предложить своим детям. Это путь к тому, что они не останутся в стороне от инноваций будущего», сказал Шапиро в интервью TechCrunch.

Игра Robot Turtles была недавно приобретена компанией по выпуску и продаже игр ThinkFun и уже в этом месяце стала доступна для массового рынка.

Code Combat

Для кого: 13+ (или младше при условии наблюдения/инструктажа)
Платформа: веб-браузер
Цена: Бесплатно
Больше информации: веб-сайт игры Code Combat
Экспертное мнение: «Очень креативный и захватывающий способ для обучения программированию через игру» - Джейсон Бэттлс, заместитель декана по разработке технологических библиотечных процессов и политик, Алабамский университет


Подпись: Code Combat – это забавное сочетание волшебников, воинов, огров и программирования.

Code Combat – единственная игра из нашего списка, в которой игроки должны использовать код в чистом виде (в настоящее время Javascript, экспериментальная поддержка CoffeeScript, Python, Clojure и Lua). Не позволяйте этому факту выбить вас из седла, так как игра Code Combat – это прекрасная возможность учиться с удовольствием.

Вы можете начинать с однопользовательских уровней этой игры в жанре «фэнтэзи», а потом применять ваши приобретенные знания программирования на других игроков.

Code Combat, как предполагается, останется бесплатной игрой, так как основной доход разработчиков – это предложение компаниям игроков высокого уровня. Да, действительно: играя в эту игру, вы можете получить работу.

Ludos (Puzzlets)
Для кого: 4-12 лет
Платформа: ПК, Mac, iOS
Цена: $100
Больше информации: Digital Dream Labs
Экспертное мнение: «Что выделяет Cloudboard (интерфейс панели Ludos) среди других доступных в настоящее время продуктов – это не только сочетание физического и цифрового мира, но и развитие навыков сотрудничества» - Терри Эйкхольц, преподаватель программы K-5 для одаренных детей, Техас


Подпись: В игре Ludos используются тайлы, поэтому для детей программирование становится тактильным.

Игра Ludos должна выйти в августе этого года. Цель игры – сделать программирование реальным практическим опытом для детей. Ludos позволяет игрокам размещать тайлы с командами непосредственно на сетке, программируя действия персонажей игры.

Cork the Volcano будет первой игрой Ludos с сильным акцентом на таких основах программирования, как планирование, последовательность и отладка. В дальнейшем в системе появятся и другие игры, ведь эта система является открытой платформой, и поэтому для нее каждый сможет создавать приложения.

Codemancer

Для кого: 9-14 лет
Платформа: ПК, Mac, iOS, Android
Цена: $20
Больше информации: веб-сайт Important Little Games, Kickstarter
Экспертное мнение: «Игра в жанре «фэнтэзи» с главной героиней, которая учит детей (и взрослых!) программированию? Мне нравится все в этой игре!» - Лоурен Скотт, веб-разработчик и младший инструктор, Dev Bootcamp


Подпись: Игра Codemancer собрала на Kickstarter в 4 раза больше денег, чем изначально было заявлено.

Разработчики Codemancer надеются, что после выпуска, который запланирован на лето следующего года, игре поможет выделиться ее интересный сюжет и героиня.

После запуска этого успешного проекта Kickstarter игроки будут использовать волшебные руны для управления действиями, помогая героине Авроре спасти жизнь ее отца. Создатель Роберт Локхарт надеется, что доступность игры разрушит все барьеры, которые препятствуют пониманию программирования детьми.

«Язык игры Codemancer очень доступен», говорит Локхарт на своей странице Kickstarter, «однако его также легко переводить на разные языки программирования. Программы становятся более сложными, когда мы внедряем такие понятия программирования, как переменные, условия и функции».

Machineers

Для кого: 8-14 лет
Платформа: ПК, Mac (версия для iPad в разработке)
Цена: Бесплатная демо-версия
Больше информации: веб-сайт игры Machineers
Экспертное мнение: «Кажется, что игра Machineers будет лучшим примером обучающей игры» - Пол Хайс, программист и разработчик игр


Подпись: Игра Machineers победила в номинации «Лучшая обучающая игра» на мероприятии Serious Games Showcase and Challenge во Флориде в 2012 году.

Игра Machineers – это игра в стиле adventure, в которой пользователи имеют дело со сломанными устройствами. Игроки должны починить устройства, используя принципы программирования и интерфейс drag-and-drop.

Энрике Лоде, член команды Danish Lohika Games, разработчиков Machineers, решил выпустить эту головоломку-приключение после того, как один ребенок-тестировщик пожаловался, что все развивающие игры похожи на «брокколи в шоколаде».

«Эта игра – подготовка к дальнейшему обучению», сказал Лоде в интервью Indie Statik. «В игре отсутствует какая-либо математика и код, поэтому дети не смогут научиться программировать. Однако игра развивает логическое мышление и то, что называется процессуальной грамотностью – умение читать и писать процессы».

Пока игра находится в разработке демо-версии Machineers для ПК и Mac можно скачать бесплатно. Lohika Games планирует запустить полноценную игру для iPad.

Bee-Bot

Для кого: 4-7 лет
Платформа: iOS
Цена: Бесплатно
Больше информации: iTunes
Экспертное мнение: «Не обращайте внимания на само устройство, просто пробуйте и ошибайтесь, выдвигайте гипотезы, проверяйте, тестируйте и добивайтесь успеха» - Дог Питерсон, сессионный преподаватель, факультет обучения, Виндзорский университет, Канада

Подпись: Многие школы используют игру Bee-Bot для обучения основам программирования

Разработчик обучающих игр TSS создал BeeBot для того, чтобы помочь детям разобраться с объектным языком программирования и последовательностью команд в программировании. Простое и доступное приложение имеет 12 уровней, ограниченных по времени выполнения, которые представляют собой лабиринты с постоянным повышением уровня сложности.

Для детей старше 7 лет существует дополнительное приложение под названием BeeBot Pyramid. Оно распространяется по цене $0,99.

Программирование для детей на курсах или в форме игры может стать отличным хобби для младших и старших школьников. Этому искусству не так сложно научиться, как может показаться поначалу. Главное - сильное стремление и непоколебимая мотивация, не угасающая даже когда в коде возникают ошибки.

Что такое программирование

Чтобы ответить на этот вопрос, нужно определиться с понятием программы. По структуре это алгоритм, четкая последовательность команд. Программирование - процесс написания цифровых приложений на компьютерных языках, которых разработано более 8000. Постоянно создаются новые виды или совершенствуются старые, а развитию сферы способствуют курсы программирования для детей и взрослых.

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

Визуальное­

Метод создания компьютерных программ путем управления визуальными элементами вместо прямого написания кода называется визуальной разработкой. Это способ разрабатывать приложения при помощи графических, символьных интерактивных объектов, пользуясь пространственным свойством элементов как частями синтаксиса программы. Языки, предназначенные для визуальной разработки, оперируют в работе фигурами и линиями, где первые выражают субъекты, события, а вторые – отражают отношения и взаимодействие внутри сцены.

Скриптовые языки

Этот тип компьютерных языков основывается на применении т.н. скриптов (сценариев). Скриптом называют последовательность операций, алгоритм, автоматизирующий выполняемую пользователем работу. Ранее сценарные языки называли языками пакетной обработки. По быстродействию различают предварительно компилируемые ЯП (яркий пример - Perl) и динамического разбора.

    Языки первой группы переводят программу в байтовый компьютерный код, а после приступают к ее выполнению.

    Динамические скриптовые языки постепенно получают алгоритм из файла, считывая дальнейший код только по мере необходимости.

Традиционные языки­

Эту группу языков можно назвать базисом разработки приложений. Благодаря сильной близости к стандартной машинной архитектуре, достигается повышенная эффективность работы. Традиционные ЯП могут использоваться для генерации новых инструментов. Основным минусом этой группы языков программирования считается ориентированность на численные алгоритмы, обуславливающие слабость в работе с символьными логическими массивами данных.

Языки программирования для детей

Какой язык лучше выбрать для обучения программированию детей? Он должен быть доступным, чтобы не напугать ребенка, но проще отталкиваться в выборе от количества подходящих обучающих материалов в свободном доступе. В этом плане лидируют следующие:

Scratch

Скретч - интерактивный учебный софт, среда, разработанная для обучения младших школьников. Создание компьютерных игр в Scratch напоминает конструктор LEGO, где программа составляется из многочисленных блоков-команд разного цвета. Скретч - объектно-ориентированная среда, где можно работать с различными элементами: видоизменять, задавать пути перемещения, заставлять взаимодействовать, поместив в визуальную среду.

Scratch относится к классу визуальных, разрабатывался под платформы Windows, GNU Linux и macOS для обучения детей азам программирования, а также прививания интереса к этому роду деятельности. Этим обуславливается простота - процесс работы сводится к добавлению и изменению спрайтов, которые состоят из нескольких кадров с определенным сценарием. Встроенный графический редактор упрощает изменение графической составляющей проекта.

Java

Это традиционный язык программирования, на котором можно выстроить методику обучения старших школьников. Спецификация Джава заключена в одном из ключевых достоинств - независимости от используемой платформы. Основой технологии Java стал не машинный, а байт-код, приложения поддерживаются любой системой, включающей виртуальную машину JVM. Ключевым достоинством Java считается относительная легкость в освоении, чему способствует обилие научных материалов на русском, английском языках.

Processing

Это скриптовый язык, основой которому послужил классический Java. Благодаря доступному для понимания синтаксису, эта среда разработки способна без труда создавать приложения, которые в контексте Processing называют скетчами. Обилие доступных в сети материалов, библиотек, мультиплатформенность, возможность использовать стороннее ПО (OpenGL) делают программирование для школьников очень доступным и не отпугивающим своей сложностью.

Как научить ребенка программировать

Поскольку детям гораздо интереснее обучаться на практике, стоит начать с нее, а не заставлять юного программиста читать «Искусство программирования» Д.Кнута. Это одна из лучших монографий по написанию программ, но ребенку будет слишком неинтересно, скорее всего, он забросит ее уже после прочтения первых страниц, испугавшись сложности. Рекомендуется разбить рабочий процесс на несколько этапов:

    Ознакомительный. Продемонстрируйте начинающему девелоперу классический софт (например, от Microsoft), покажите, как редактировать тексты, разобрав как все работает, и объясните почему разработчик сделал так. Дайте ему почувствовать подходы и требования к интерфейсу и качественным программам в целом. Расскажите о компьютерных технологиях, об алгоритмах и о том, как с ними работать.

    Базы данных. Не нужно рассказывать обо всех аспектах работы с базами данных, если юный программист слишком мал, чтобы справиться с такой информацией. Но стартовые знания (таблицы, SQL-запросы и процедуры) пригодятся для эффективного программирования и понимания того, как работают создаваемые программы.

    Обучающий софт. Сфера разработки в России только развивается, но уже разработаны обучающие приложения, игры, которые можно найти в интернете. Установите несколько и научите ими пользоваться. Вскоре будут освоены начальные знания - основы информатики, алгоритмизация, логическое мышление.

Программы для обучения

Одна из лучших программ для прививания начальных навыков программирования называется Скретч. Это среда, позволяющая создавать интерактивные приложения простейшими алгоритмами. Разработано множество мультивозрастных приложений на смартфоны, обучающих программированию в игровой или практической форме:

Курсы программирования

В вашем городе могут быть курсы программирования для школьников, интересующихся разработкой - стоит проверить тематические ресурсы в сети или объявления в соответствующих учреждениях. Еще стоит поискать в интернете онлайн-курсы, предоставляемые как университетами и школами, так и частными лицами, или же найти самоучитель и научиться основам - визуальному Scratch и текстовому Python или JavaScript вместе с ребенком.

Игры для обучения­

Пример игр в категории программирования - Colobot и Codespells. Первое - трехмерная обучающая стратегическая игра о космосе, дающая начальные навыки работы с Java и C/C++. Основная особенность – персонажи-роботы, которые программируются на выполнение монотонных действий вместо игрока. Второе - креативная игра в жанре «песочница о волшебниках». Обучающая часть заключается в создании заклинаний путем написания кода.

Популярная игра в категории «Обучение детей программированию» - Kodable, игра-лабиринт, в которой юный программист познакомится с циклами, условиями, функциями и отладкой на 105 легких и сложных уровнях. Доступность и качественная анимация - весомые достоинства этого приложения, приковывающие внимание детей надолго.

Программирование для детей онлайн

Один из путей обучения - школа программирования для детей онлайн. В сети предлагаются курсы для начинающих разработчиков, ориентированные на группы разных возрастов. Многие обучают детей от 7-8 лет, уроки проводятся по Skype. Еще один вариант - онлайн-сервисы вроде Codabra, предоставляющие курсы для детей от 9 лет, где обучение программированию происходит при помощи таких платформ, как Minecraft и Scratch.

Книги­

Одна из лучших книг в данной категории - «Программирование на Java для детей, родителей, дедушек и бабушек», выпущенная в 2011 году Яковом Файном. Это доступно написанный учебник по Java для детей возраста 11-18 лет, который можно использовать, чтобы организовать кружок программирования для школьников. Книгу нельзя назвать самодостаточным руководством, но для получения базовых знаний и пробуждения интереса к дальнейшему развитию она подойдет.

«Scratch для детей» - книга, предназначенная для обучения основам визуальной разработки детей старше 8 лет. По этому руководству, написанному М.Маржи, ребенок сможет начать свой путь программиста под чутким руководством своих родителей.

«Python для детей» - интересный самоучитель для детей от 10 лет. Книга актуальна по причине доступности и востребованности языка Python, который позволит юному программисту создавать все: от простых программ до крупных игровых вселенных.

Видео

Не знать программирования через десять лет - это как не знать английского языка сейчас. Без знаний обойтись можно, но с ними открываются совсем другие перспективы. Выбрали книги по программированию с нуля для детей и взрослых.

Пусть вас не смущает, что книги детские - их заказывают себе многие взрослые, которым программирование в новинку, а освоить тот или иной язык хочется или требуется по работе (например, аналитикам). С профессиональных книг начинать сложновато, а вот самоучители - самое то.

Python для детей

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

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

JavaScript для детей

Эта книга позволит вам погрузиться в программирование и с легкостью освоить JavaScipt. Вы напишете несколько настоящих игр - поиск сокровищ на карте, «Виселицу» и «Змейку». На каждом шаге вы сможете оценить результаты своих трудов - в виде работающей программы, а с понятными инструкциями, примерами и забавными иллюстрациями обучение будет только приятным.

Эта книга - не только введение в JavaScript, но и вообще в программирование.

Scratch для детей

Scratch - простой, понятный и невероятно веселый язык программирования для детей. В нем нет кодов, которые нужно знать назубок и писать без ошибок. Все, что требуется, - это умение читать и считать. Как из конструктора, при помощи Scratch можно собирать программы из разноцветных «кирпичиков» - блоков. В программу можно вносить любые изменения в любой момент, и сразу видеть, как она работает.

Подробные объяснения, разобранные по шагам примеры и множество упражнений помогут освоить Scratch без труда.

Программирование для детей

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

Многие считают, что программирование - одно из наиболее важных в ХХI веке умений.

Читайте, учитесь и создавайте собственные программы. Это клево 😉