Программирование на Python —

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

6 причин пройти обучение по направлению Python

Индивидуальный подход
Родители могут быть спокойны, ведь ребенок будет действительно увлечен и проведет время с пользой. В процессе обучения ученики выполняют большое количество практических заданий по каждой теме программы и создают собственные, сложные и красочные проекты.
В программе тренеры проработали 4 модуля обучения. В направлении «Блочный Python» детей подготавливают к освоению текстового языка. После прохождения базы по Python, ребенок может перейти к изучению более сложных дополнений языка, таких как PyGame и Flask.
При отборе тренеров мы оцениваем не только экспертизу, но и их коммуникативные навыки. Наши учителя могут легко найти общий язык с ребенком и донести до него нужную информацию. Мы убедились, что дружеская атмосфера на занятиях способствует более эффективному обучению.
Современный подход к обучению через развлечение
Адаптивный формат обучения
Дружеские отношения в процессе обучения
1
2
3
4
5
Наши тренеры контролируют процесс обучения ребенка и следят за его прогрессом. После каждого занятия в своем личном кабинете вы будете получать от них обратную связь.
Контроль за успеваемостью
Вы сможете планировать время обучения ребенка в личном кабинете, переносить занятия по уважительным причинам.
Удобное расписание
6
Занятия проводят лучшие тренеры
Могут провести занятия по программированию на 2 языках (русский, английский)
Наш строгий отбор преподавателей позволяет выбрать самых опытных в работе с детьми
290 000+
из 70 стран
с 2016 года
занятий провели наши тренеры
мира родители доверяют нам своих детей
помогаем успешно учиться онлайн
Найдут общий язык с любым ребенком, что позволяет сделать обучение намного эффективней
Построит успешную карьеру в IT

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

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

Python находится в 5-ке востребованных языков программирования. Его используют такие гиганты, как Яндекс и Google. С его помощью ребенок сможет разрабатывать сайты, игры, приложения и системные утилиты.
Как обучение поможет ребенку
Программа обучения
обучение на английском и русском языке
Python
На освоение направления на базовом уровне без дополнительных тем потребуется от 60 до 80 часов. На углубленном уровне с дополнительными темами - от 140 до 180 часов.

По окончанию курса учащиеся научатся основам языка программирования Python и его освоят популярные библиотеки.

1. Ввод и вывод данных и математика (
4-8 часов)
  • Понятие переменной, типы данных "целое число" и "строка", функции print (с аргументами sep, end) и input, 5 способов форматирования строк.
  • Арифметические операции: сложение, вычитание, умножение и деление.
  • Целочисленное деление, остаток от деления, округление.
В процессе прохождения модуля ученик изучит Python IDLE - базовую среду разработки для Python, научится создавать и запускать простейшие программы, а также сохранять их на компьютер. Кроме этого, ученик научится создавать переменные, научится работать с типом данных "строка" (текст) и "целое число", а также разными способами выводить на экран результаты своих действий. Также ученик изучит тип данных "дробное число" и использование арифметических операций в языке Python: сложения, вычитания, умножения, возведения в степень, обыкновенного деления, целочисленного деления (деления без остатка), остатка от деления и других действий, а также сокращённые записи для каждого из арифметических действий.

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

2. Импортирование модулей. Модуль math, random и turtle (2-4 часов)
  • Способы импортирование модулей, использование готовых функций из модулей.
  • Базовые команды для рисования с помощью модуля turtle.
Модули - это встроенный в язык программирования готовый код, помогающий выполнять типовые задачи. Подключить любой модуль в программу можно с помощью механизма импортирования. Ученик научится импортировать и использовать команды из модуля math, который подключает "продвинутую" математику, и модуля random, который генерирует случайные числа и делает случайный выбор. Кроме этого, ученик освоит turtle - простейший модуль для рисования линий и фигур на экране с помощью команд.

3. Условия (8-12 часов)
  • Тип данных bool
  • Операторы сравнения
  • Конструкция If-elif-else
  • Логические операторы
В процессе прохождения модуля ученик столкнётся с одной из самых популярных структур в языках программирования - с Условиями. Ученик изучит булевый тип данных, операторы сравнения >, <, ==, <=, >=, !=; простые и вложенные условия, конструкцию if-elif-else, операторы not и in. По желанию и в зависимости от способностей ученика будут изучены функция bool, any, all и тернарные операторы.

Наряду с теорией ученик выполнит мини-проект "Галактический квест", несколько практикумов, состоящих из задач по пройденной теме, а в конце модуля пройдёт зависящий от уровня сложности итоговый тест по всей теме.

4. Цикл while (6-8 чаcов)
  • Цикл while
  • Бесконечный цикл
  • Операторы управления циклом break и continue.
В процесс прохождения модуля ученик узнает как создавать циклы, запустит и остановит свой первый бесконечный цикл, научится использовать операторы управления циклом и переменные-счётчики для автоматической остановки цикла, составлять цикл с условием внутри, а также выполнит несколько мини-проектов ("Игральные кости", "Угадай число") и несколько заданий по модулю turtle, связанном с циклом while.

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

5. Строки (8-10 часов)
  • Действия со строками, индексы и срезы.
  • Поиск, подсчёт и замена символов.
  • Буквы, регистр и цифры в строках.
Строки - общее название для всего, что представляет из себя текст - отдельные символы, буквы, слова и предложения. В этом модуле ученик познакомится с индексами и срезами, чтобы извлекать из большого текста нужную информацию; научится искать слова и символы в тексте, подсчитывать их количество и заменять отдельные элементы на другие элементы; определять буквы, размер регистра, цифры и специальные символы в тексте.

Наряду с теорией ученик выполнит практикум, состоящих из задач по пройденной теме.

6. Цикл for (6-8 часов)
  • Перебор строк
  • Перебор диапазона чисел range
  • Операторы управления
Цикл for - ещё один цикл в языке Python. После цикла while новый цикл покажется не таким сложным. Ученик научится перебирать слова и предложения по буквам, генерировать числовые диапазоны и заставлять программу выполняться именно столько раз, сколько понадобится.

Наряду с теорией ученик выполнит несколько практикумов и заданий по модулю turtle, связанных с циклом for, состоящих из задач по пройденной теме.

7. Списки (6-8 часов)
  • Создание списка и элементы списка.
  • Минимум, максимум и сортировка.
  • Генераторы списков (списковое представление).
Списки - это популярный тип данных для хранения нескольких объектов. Ученик узнает, что такое индексы и элементы списков, как найти максимум и минимум в списке элементов, а также научится сортировке списков по выбранному критерию. Кроме этого, в этом модуле изучается сокращённая запись генерирования списков - списковое представление.

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

8. Дополнительные модули (10-12 часов)
  • Модуль pickle. Запись/чтение данных в текстовый файл.
  • Модуль datetime и time. Работа с датой и временем.
  • Работа с терминалом, установка нестандартных модулей через менеджер пакетов pip.
  • Модуль pillow. Обработка изображений, рисование фигур на изображении, добавление текста и водяных знаков.
В рамках этого модуля изучаются более сложные модули языка Python. Ученик научится работать с файлами на компьютере, а с помощью языка программирования будет автоматически записывать предложения в текстовые файлы и прочитывать содержимое текстовых файлов; кроме того, ученик изучит чтение из файла и запись в файл более сложных структур, таких как списки и будущие типы данных.

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

9. Функции (10-12 часов)
  • Создание функции, аргументы, параметры, возвращение результата.
  • Позиционные и именованные аргументы, параметры по умолчанию.
  • Использование оператора *.
  • Область видимости.
  • Lambda-функции.
  • Декораторы.
Функции - ещё одно из самых распространенных понятий в программировании. В процессе прохождения этого модуля ученик узнает о том, как создавать функции, что такое и зачем нужны аргументы и параметры (и какими они бывают), как возвращать результат из функции.

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

Наряду с теорией ученик выполнит проекты "Генератор предложений", "Дракон из пещеры", "Быки и коровы", а также практикум, состоящих из задач по пройденной теме, а в конце модуля пройдёт итоговый тест по всем предыдущим темам.

10. Разработка графического интерфейса пользователя с помощью библиотеки tkinter. Базовый уровень. Создание окна и виджетов, методы позиционирования виджетов (12-14 часов)
  • Виджеты Label, Button, Frame, LabelFrame, Entry, Listbox, Toplevel, Scale.
  • Конфигурация виджетов (изменение параметров виджета).
В рамках этого модуля ученик познакомится с основами проектирования интерфейсов; ученик научится создавать окна, использовать готовые виджеты (кнопка, поле ввода и другие интерактивные элементы), а также связывать виджеты с функционалом программы.

Весь модуль состоит из практических заданий. Ученик выполнит мини-проекты "Проверка паролей", "Список дел", "Будильник" и "Генератор цветов".

11. Словари (6-8 часов)
  • Создание словарей.
  • Изменение, удаление и перебор элементов.
  • Генераторы словарей, дополнительные методы словарей.
  • Модуль json.
  • Универсальный формат данных, который выглядит как словарь.
В процессе прохождения модуля ученик изучит словари - тип данных, хранящий данные в виде "ключ-значение". Ученик научится создавать пустые словари, словари с парами, получать значения по ключу, добавлять новую пару в существующий словарь, изменять значения, удалять последнюю пару, удалять пары по их ключам, полностью очищать словарь, а также перебирать ключи и значения.

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

По желанию и в зависимости от способностей ученика будут изучены расширенные возможности словарей: функция dict, генераторы словарей, методы get и update, оператор del, использование оператора **, а также ключевые слова args и kwargs.

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

12. Разработка графического интерфейса пользователя с помощью библиотеки tkinter. Продвинутый уровень (12-14 часов)
  • Отложенный запуск функции. Использование лямбда-выражений.
  • Обработка исключений: try, except, finally, else
  • Месседжбокс и использование обработки исключений.
  • Привязка клавиш с помощью метода bind.
  • Методы forget и destroy.
  • Модуль pyinstaller. Конвертер файла .py в исполняемый файл .exe.
Этот модуль повышенной сложности и выполняется по желанию. Если ученик заинтересован в проектировании и создании интерфейсов, то модуль tkinter продолжится на более продвинутом уровне: здесь будут использоваться отложенный запуск функции, лямбда-выражения, обработка исключений и подмодуль интерактивных сообщений messagebox.

Весь модуль состоит из практических заданий. Ученик выполнит мини-проекты "Палочки", "Радуга", "Решатель примеров", "Викторина", "Калькулятор", "Логин и пароль", "Заметки", "Решатель квадратных уравнений" и "Шульте". В качестве бонуса изучается Pyinstaller - модуль для преобразования программ в исполняемые файлы, которые можно запускать на любом другом компьютере с операционной системой Windows.

13. Множества (2-4 часов)
  • Создание множеств, возможности множеств, изменение множеств
  • Пересечение множеств, объединение множеств, разность множеств
Множества - это тип данных, беспорядочно хранящий только уникальные данные. В процессе прохождения этого небольшого модуля ученик узнает, как создавать множество, как превращать другие типы данных во множество, как узнать, равны ли множества, какие бывают свойства множеств, как узнать принадлежность множеству и мощность множества, а также как перебирать элементы множеств, добавлять и удалять элементы во множестве.

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

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

14. Разработка графического интерфейса пользователя с помощью библиотеки tkinter. Canvas (8-10 часов)
  • Создание холста и рисование геометрических фигур
  • Изменение и удаление объектов, вызов функций, создание надписей
  • Обработка пересечений и отмена отложенного запуска
  • Рисование линий и изменение координат через coords
Этот модуль выполняется по желанию. Изучение модуля tkinter продолжится с создания нового виджета - Canvas, позволяющего рисовать фигуры и обрабатывать их пересечения.

Весь модуль состоит из практических заданий. Ученик выполнит проекты "Paint", "Время реакции", "Часы", "Светофор", "Пингвин", "Пинг-понг".

15. Разработка графического интерфейса пользователя с помощью библиотеки tkinter. Модульные и сложные проекты (14-16 часов)
  • Модульность в Python. Создание нескольких модулей для одного проекта.
  • Виджеты Radiobutton, Checkbutton, Spinbox.
Этот модуль повышенной сложности и выполняется по желанию. Здесь собраны наиболее сложные проекты по модулю tkinter. В процессе прохождения модуля будет изучено понятие "модульность", которое позволяет создавать один большой проект из нескольких небольших модулей.

Весь модуль состоит из практических заданий. Ученик выполнит проекты "Шифр Цезаря", "Шифр Атбаш", "Аффинный шифр Цезаря", "Генератор паролей", "Зодиаки", игра "Лабиринт" и другие.

16. Двумерные массивы (4-6 часов)
  • Создание вложенных массивов,
  • Генератор двумерных массивов
  • Поиск диагоналей
  • Разворот массива
В процессе прохождения этого модуля учеником будут изучены двумерные массивы (или, по-другому, матрицы), а также в модуле пойдёт речь о способах применения матриц и решениях задач, в которых есть двумерные массивы.

17. Объектно-ориентированное программирование (14-16 часов)
  • Объекты, атрибуты-переменные и конструктор класса.
  • Аргументы, параметры и методы класса
  • Парадигмы ООП. Наследование
  • Парадигмы ООП. Инкапсуляция. Геттеры и сеттеры, декоратор property.
  • Парадигмы ООП. Полиморфизм и перегрузка операторов.
Объектно-ориентированное программирование (или ООП) - одно из самых важных и сложных понятий в программировании. На примере игровых классов (Воин, Маг и так далее) ученик будет разбираться с тем, что представляют из себя классы, зачем их применять и какие преимущества они дают.

Большой теоретический блок включает в себя создание простейших базовых игровых классов (Воина и Мага), понятие объектов класса (создание конкретных персонажей), конструктора класса (для создания персонажей с готовыми характеристиками), а также парадигм ООП:

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

18. Дополнительные разделы (12-14 часов)
  • Библиотеки requests и BeautifulSoup4. Основы веб-парсинга.
  • Библиотека telebot или discord. Создание бота для Telegram или Discord и запуск бота на Heroku.
  • Основы Git. Версии, создание репозитория на Github, команды init, add, commit, remote, push и другие.
Дополнительные разделы даются в зависимости от предпочтений и способностей ученика.

В них рассматриваются как вопросы, не попавшие в основную учебную программу, такие как обмен значений переменных или множественное присваивание; линейный и бинарный поиск; функциональное программирование (функции map, filter и lambda) и другие; так и специфические:

  • создание ботов в Telegram и Discord (с последующим запуск бота на сервисе Heroku);
  • основы веб-парсинга с библиотеками request и BeautifulSoup4.
Python: Flask
На изучение направления на базовом уровне без дополнительных тем потребуется от 40 до 60 часов.

На углубленном уровне с дополнительными темами - от 80 до 130 часов.

МОДУЛЬ 1. Простые страницы (4 занятия)
  • Создание сервера.
  • Базис по HTML.
  • Создание шаблонов с HTML.
  • Базис по CSS и его использованию.
  • Дебагер.
Изучается создание сервера, настройка маршрутов (адресов) сайта. Затронут минимум html и css для успешного изучения курса, чтобы проекты внешне выглядели лучше. Можно создавать простейшие сайты.

МОДУЛЬ 2. Шаблонизатор Jinja2 (6 занятий)
  • Передача данных в html.
  • Условия, циклы, "функции" и переменные в html.
  • Наследование шаблонов.
К концу модуля ученик будет составлять блочные конструкции в html-шаблонах. Это позволит отображать данные с сервера на страницах с одновременным использованием тегов для лучшей структуры отображения и внешнего вида.

МОДУЛЬ 3. Формы (7 занятий)

  • GET- и POST-запросы.
  • Создание форм.
  • Изучение полей форм и валидаторов.
Формы дают возможность пользователям сайта отправлять данные на сервер. Благодаря этому можно создавать чаты, тесты и подобные вещи.

МОДУЛЬ 4. Архитектура и внешний вид (5 занятий)
  • Фреймворк Bootstrap с Flask.
  • Архитектура приложений.
  • Переопределение страниц-ошибок.
Демонстрирует упрощенную архитектуру для написания больших проектов. Это улучшает работу программистов над продуктом. А также при минимальных усилиях с помощью Bootstrap можно настраивать красивый вид сайтов и упростить работу с формами.

МОДУЛЬ 5. Клиент-серверные данные (8 занятий)
  • Работа с cookies.
  • Сессии.
  • Создание и использование API и REST API.
К завершению модуля ученик реализует аутентификацию и авторизацию пользователей на своём сайте, сможет создавать свои и использовать чужие API. Хранить информацию при помощи куки и сессий.

МОДУЛЬ 6. Базы данных (10 занятий)
  • SQLite.
  • Установка PostgreSQL.
  • Изучение таблиц и связей.
  • Внесение изменений в БД.
  • Использование ORM SQLAlchemy.
  • Миграции.
  • Механизм аутентификации и авторизации с Flask-Login.
По итогу ученик сможет подключать базу данных к своему сайту, сохранять и получать данные из базы, регистрировать пользователей сайта. Будут рассмотрены запросы на основе ORM FLASK-SQLAlchemy.
Блочный Python
На освоение направления потребуется от 70 до 80 часов.

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

Модуль 1. Ввод и вывод данных (14-16 часов)
  • Понятие переменной.
  • Типы данных.
  • Методы ввода и вывода информации.
В процессе прохождения модуля ученик познакомится со средой разработки EduBlocks, изучит понятие "переменной", на практике изучит использование блоков (методов) input и print для ввода и вывода данных (чисел, текста), познакомится с использованием базовых математических операций в Python.

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

Модуль 2. Импортирование модулей (10-12 часов)
  • Знакомство с понятием "импортирование модулей".
  • Использование готовых команд из модулей.
  • Практика основ рисования простых фигур, с использованием модуля turtle
Модуль - это готовый встроенный в язык программирования код, помогающий выполнять типовые задачи.

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

Модуль 3. Ветвление (условия) (6-8 часов)
  • Знакомство с понятием "условие" в программировании, а так же с логическим типом данных "boolean" (истина/ложь).
  • Изучение блоков ветвления: if/elif/else, операторы сравнения ("больше", "меньше", "равно"), логические операторы (и/или/не) и использование их на практике в разных сочетаниях между друг другом.
В процессе прохождения модуля ученик познакомится с одной из самых базовых структур в языках программирования - условиями. Ученик научится делать свои приложения еще более динамичными, добавляя в программу возможность выбора последующего действия.

Наряду с изучением теории ученик выполнит несколько практических заданий по пройденной теме, проект "Светофор", а в конце модуля выполнит итоговый тест по всей теме.

Модуль 4. Циклы (12-14 часов)
  • Знакомство с понятием "цикл" в программировании.
  • Изучение использования циклов for и while.
  • Применение циклов в разных алгоритмах и задачах.
В процессе прохождения модуля ученик познакомится с понятием "циклы" и с примера их использования. Ученик увидит разницу использования циклов for и while, а так же приблизится к автоматизации кода, добавив в приложения возможность программного повторения частей кода определённое количество раз.

Наряду с изучением теории ученик выполнит несколько практических заданий по пройденной теме, а в конце модуля выполнит 2 итоговых теста по циклам for и while.

Модуль 5. Списки (10 часов)
  • Понятие "список" в программировании.
  • Создание списка.
  • Работа с элементами списка: добавлять новых элементов, удаление, перемещение.
Списки - это удобный тип данных для систематизации хранения данных. Ученик узнает, что такое индексы и элементы списков, как найти максимум и минимум в списке элементов, нахождению уникальных или, наоборот, повторяющихся элементов в списке.

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

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

Модуль 6. Функции (10 часов)
  • Понятие "функция" в программировании.
  • Создание функции, аргументы, параметры функции, возвращение результата.
К концу модуля ученик продолжит изучение методов автоматизации кода и научится использовать ранее написанный код в любом месте программы неограниченное количество раз.

Наряду с теорией ученик выполнит практикум, состоящих из задач по пройденной теме.

Модуль 7. Основы объектно-ориентированного программирования (ООП) (8 часов)
  • Понятия "класс" и "объект" в программировании.
  • Создание классов и объектов, аргументы, параметры функции, возвращение результата.
К концу модуля ученик будет понимать преимущества использования классов и, используя все ранее изученные темы. А также изучив возможность быстрого создания однотипных объектов, ученик разработает заключительный проект курса - "Электронный журнал".

Наряду с теорией по модулю ученик выполнит практикум, состоящих из задач по пройденной теме.
Python: Pygame
На освоение направления потребуется от 30 до 50 часов.

По окончанию курса учащиеся научатся создавать двумерные игры на языке Python и создадут такие игры как Dino Chrome, Flappy Bird, Doodle Jump и Space Invaders (и ещё несколько – опционально).

1. Введение (2-6 часов)
  • Создание окна, обновление экрана и обработка событий.
  • Рендеринг и анимация без классов
  • Рендеринг и анимация с классом
В процессе прохождения модуля ученик изучит базовые команды Pygame и создаст шаблон для всех будущих программ: создаст окно, научится регулировать размеры окна, изменит название окна; установит контроль частоты кадров FPS, познакомится с главным циклом, который бесконечно долго будет обновлять экран.

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

Поэтому в завершающем материале этого модуля ученик повторит анимацию мяча, но сделает это с использованием объектно-ориентированного программирования и затем с лёгкостью увеличит количество мячей с одного до десяти.

2. Dino Chrome (8-12 часов)
  • Спрайт. Рендеринг фона и спрайта
  • Спрайт. Обновление спрайта
  • Группа спрайтов. Случайные появления
  • Главный герой. Анимация, управление и звук
  • Препятствия, случайный вид и столкновения
  • Конец игры. Шрифты и счётчик очков
Этот модуль состоит из создания игры "Dino Chrome". Для каждой игры ученик будет подготавливать отдельную папку, в которой будет создавать места для хранения изображений, звуков, шрифтов для проекта, а также папки для объектов из игры: дороги, облаков, персонажей и других.

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

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

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

Завершится модуль подключением в игру игрового шрифта, отображения счётчика очков и вывода надписи "Game over" в случае проигрыша.

В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.

3. Flappy Bird (6-10 часов)
  • Фон, слои отрисовки и движение фона
  • Главный герой, анимация и препятствия
  • Гравитация, поворот изображения и счётчик очков
  • Чекпоинт, конец игры и пересечение с точками
Этот модуль состоит из создания игры "Flappy Bird". По аналогии с предыдущей игрой ученик почти самостоятельно загрузит и позиционирует фон (небо и город), затем наложит поверх одного фона ещё один (дорогу) и заставит дополнительный фон двигаться.

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

Ученик изучит то, как создаётся гравитация в играх, будет регулировать скорость падения, создаст взлёт по клавише "Пробел", добавит звуки и научит персонажа наклоняться в сторону полёта. Здесь же добавит счётчик посередине экрана и запрограммирует его на обновление при прохождении препятствия.

Завершится модуль добавлением в игру чекпоинта, добавлением игрового шрифта, надписи "Game over" и небольших улучшений игры.

В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.

4. Doodle Jump (6-10 часов)
  • Рисование линий на фоне и генерация платформ.
  • Главный герой. Управление персонажем, прыжки и смещение камеры.
  • Пересечение с точкой, анимация прыжка и случайный цвет платформ.
  • Поведение платформ, пружина, счёт и конец игры.
Этот модуль состоит из создания игры "Doodle Jump". Ученик освоит рисование линий на фоне и создаст случайное появление платформ на экране при каждой перезагрузке игры и движение платформ вниз с последующим появлением вверху экрана.

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

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

Завершится модуль изменением поведения каждой из цветных платформ, добавлением пружины и поведения столкновения с ней, добавлением игрового шрифта, надписи "Game over" и небольших улучшений игры.

В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.

5. Space Invaders (8-12 часов)
  • Космос и космический корабль.
  • Выстрелы по таймеру и громкость звуков.
  • Генератор изображений и анимация взрывов.
  • Движение, генерация и атака спрайтов.
  • Здоровье и отображение уровня здоровья персонажа.
Этот модуль состоит из создания игры "Space Invaders". Ученик самостоятельно создаст фон и запрограммирует его движение, а также самостоятельно загрузит космический корабль и создаст его управление.

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

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

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

В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.
Обучение адаптировано под каждого ребенка
Программа состоит из 4 модулей, разработанных под возраст, уровень и знания ученика
Рекомендован для детей, которые переходят со Scratch или Minecraft на Python. Этот модуль специально составлен для подготовки и адаптации учеников к серьезному программированию на базе Python. Ориентирован на детей от 9 лет.
Модуль подходит для тех, кто освоил Scratch и готов писать код. Ученики должны уметь хорошо читать, разбираться в теории и размышлять логически. Ориентирован на детей от 10 лет. Ученикам младше 13 лет необходимо пройти проверочный тест для записи.
PyGame — небольшое дополнение к учебной программе Python. В рамках этого направления закрепляются навыки объектно-ориентированного программирования, а также изучаются такие понятия как FPS, рендеринг, спрайт и другие, которые используются при создании игр. Ориентирован на детей от 10 лет.
Для этого модуля дети должны обладать хорошими знаниям по Python. Flask – микрофреймворк для языка Python, позволяющий создавать полноценные WEB-сайты. Ориентирован на детей от 12 лет.
*Ребенок может пройти обучение по всем модулям, либо выбрать один или несколько в зависимости от своего уровня знаний.
• Операционная система: Windows 8/8.1/10 x64, Mac OS 10.12 и выше;
• Установленный интернет браузер Google Chrome;
• Оперативная память: 4 Гб (рекомендованная 8 Гб);
• Процессор: 2-х ядерный с тактовой частотой от 2.2 GHz (желательно 4-х ядерный если это возможно);
• Место на жестком диске: не менее 4-6 ГБ свободного пространства жестком диске;
• Разрешение экрана: желательно 1280x800 пикселей;
• Наличие микрофона или гарнитуры;
• Наличие динамиков;
• Интернет-соединение от 1 Мбит/сек.
Системные требования