Найти в Дзене

Зачем детям самим делать игры?

Я являюсь преподавателем по программированию на Python у ребят 10-15 лет, и, что странно, родители моих учеников никогда меня не спрашивали, зачем я включила в программу создание игр.
Да-да, никаких "правдивых" историй о том, что меня часто спрашивают об этом... Так вот, я хотела бы всё равно ответить на этот вопрос, пусть и без особых пожеланий со стороны своих клиентов) Да, в школе все проходили ту самую координатную плоскость: Но одно дело определять по точке её координаты, и совсем другое - понимать координаты всех действующих лиц твоей игры (а порой это и главный герой, и 100 противников, которые появляются в рандомный момент, и пуля, которая летит в этих противников), и как с их помощью, например, определить столкновение двух объектов игры. В продолжение разговора о координатах, не так-то просто представить и сообразить, что-где-и-как будет в игре.
Рассмотрим на примере игры, которую мы недавно делали с учениками: Видео-представление игры: bit.ly/feelcode-my-cuphead Если главный
Оглавление

Я являюсь преподавателем по программированию на Python у ребят 10-15 лет, и, что странно, родители моих учеников никогда меня не спрашивали, зачем я включила в программу создание игр.
Да-да, никаких "правдивых" историй о том, что меня часто спрашивают об этом...

Так вот, я хотела бы всё равно ответить на этот вопрос, пусть и без особых пожеланий со стороны своих клиентов)

Что дают игры, которые ребята пишут с НУЛЯ сами:

1. Чёткое понимание того, как работают координаты

Да, в школе все проходили ту самую координатную плоскость:

Координатная плоскость из школьной программы
Координатная плоскость из школьной программы

Но одно дело определять по точке её координаты, и совсем другое - понимать координаты всех действующих лиц твоей игры (а порой это и главный герой, и 100 противников, которые появляются в рандомный момент, и пуля, которая летит в этих противников), и как с их помощью, например, определить столкновение двух объектов игры.

2. Развитие абстрактного мышления

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

Игра ученицы, написанная на Python
Игра ученицы, написанная на Python

Видео-представление игры: bit.ly/feelcode-my-cuphead

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

И таких мелочей очень много, всё это надо учитывать и представлять перед тем, как записать в виде кода.

3. Повышение навыков кодинга

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

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

Поэтому даже сложные темы во время создания игр прекрасно отрабатываются и лучше запоминаются.

4. Желание программировать у детей

Если честно, для меня это самый главный плюс.

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

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