4

Как увлечь детей программированием. Этап 4⁠⁠

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

Предыдущие части:
Как увлечь детей программированием. Этап 1
Как увлечь детей программированием. Этап 2
Как увлечь детей программированием. Этап 3

Цель этапа - отвлечься от паззликов и начать осваивать настоящее программирование на настоящем языке программирования "Python"
(он же "питон", он же "пайтон", называйте как хотите). Освоить синтаксис языка, его основные конструкции (циклы там и прочая лабуда). Набить руку в Редакторе программ (это по сути обычный текстовый редактор, но с некоторыми дополнительными удобствами).

Пока что будем это делать в максимально игровой форме. Нам поможет этот чудный сайт: https://codecombat.com/play
(тоже первым делом меняем язык на русский, нажав синюю кнопку внизу).
Это самая настоящая игра, с Героем и Злодеями, с Локациями и Заданиями, с зарабатыванием баллов и покупкой амуниции:

Отличие только в том, что "герой" (объект "Hero") управляется не мышкой, а управляется командами на настоящем языке Python.
Вот пример задания (при открытии задания, текст программы обычно уже частично написан, для затравки):

Python – хороший и красивый язык программирования, его особенность в том, что никаких фигурных скобок для выделения блоков команд не нужно, все вложенные блоки выделяются только отступами в четыре пробела (и глазу красиво, и компьютеру понятно!).
Например, тот наш пример из первого занятия:

на языке Python будет выглядеть так:

Красиво, да?

Итак, пишем программу на Питоне, играючи.
Подсказок в игре очень много, все на русском. И задание подробно разжуют, и всегда доступна подсказка. И в тексте программы заранее рассыпали кучу поясняющих комментариев (в Питоне комментарием считается строка, которая начинается с символа "#"). И в редакторе всякими синими прямоугольниками подсказывают, как именно нужно оформить вложенный блок команд. И слева от редактора перечислен доступный на данном уровне набор команд, щёлкаешь по ним – выводится подробное описание. Но это не паззлики, их мышкой не перетянешь – чаду придётся писать команды руками. Увы, они все на английском языке. Но они очень простые, например "hero.moveRight()" – всего три простых английских слова… чадо понахватается немного английской лексики, разве плохо?
Зато редактор, в котором вводится текст программы – вполне себе полноценный редактор для программистов, например он помечает ошибки, и раскрашивает для наглядности текст программы, а самое главное – по мере ввода буковок он вываливает выпадайку, где перечислены все возможные продолжения ввода, то есть продолжать вводить чуждые английские буковки уже не нужно – нужно просто выбрать нужный вариант в выпадайке:

Итак, подсказок море, все на русском. Проблема только в том, что чаду скучно и лениво их читать, оно махом закрывает все мешающие подсказки, и начинает подбирать нужные команды в своём прямолинейном детском стиле (то есть методом ненаучного тыка…)
Пожалуй, придётся вам ему помогать. Нет, не лупить по рукам, заставляя читать подсказки. А придётся самому их читать, и потом дозированно подбрасывать полученные из них знания чаду, по мере его затруднений. Это вам вполне по силам, вот например пример такой подсказки:

Ещё неплохо чаду пояснить, что такое "методы" и почему команда так чудно выглядит – с точкой после "hero". Здесь "hero" – это объект, поведение которого мы программируем. Что-то типа спрайтов в Scratch-е, который мы использовали на прежнем этапе. И этих объектов может быть много, а программа у нас одна общая – поэтому к действиям, которые умеет выполнять объект, принято обращаться в полном виде, через точку: "объект.метод". Чтобы точно было видно, к какому объекту мы обращаемся, и какое его действие выполняем.

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

Следующим этапом уже опишу, как чаду установить на компьютер настоящий Редактор Программиста, и дам пример первой настоящей программы.

1
Автор поста оценил этот комментарий
Спасибо, что направляете. Моему ребёнку 9 лет, задумалась над тем, что может пригодиться ему в дальнейшем. Пусть сначала это как игра, затем посерьёзнее. Кто знает, может захочет стать программистом? Моя работа сейчас направить его. Искала такие советы как у вас. Нашла школу программирования , но дорого и сомнительно, отзывы разные. Сейчас нашла сайт Code.org, потихоньку осваиваем.
раскрыть ветку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества