ещё
свернуть
Все статьи номера
2
Февраль 2017года
Педагогические инновации
Компьютерные программы и сервисы

Как обучить программиста

Максим Стрельцов, учитель информатики ГБОУ Школа № 657, Москва
Главное в статье
  1. Учащиеся 2-3-х классов работают в среде Scratch и Сode.org – учатся программированию: рисуют персонажей, подбирают графическое оформление, разбивают задачу на серию шагов. Примеры заданий.
  2. Школьники 4-5-х классов осваивают App Inventor и Blockly: решают алгоритмические и олимпиадные задачи, формируют навыки проектной работы, создают мобильные приложения. Примеры заданий.
  3. Ученики 6-7-х классов программируют на Java и Python. Java используют для разработки обычных приложений и приложений под операционную систему Android: баз данных, веб-приложений.
  4. Спрос на разработчиков языка программирования Python вырос по всему миру. Уроки программирования на Python помогают готовить олимпиадников и ориентирует на выбор профессии.

Мы живем во время информационного и технологического прорыва. Важную роль приобретает умение создавать, использовать информацию и опыт людей, чтобы выразить себя и реализовать идеи с помощью информационно-коммуникационных технологий (далее – ИКТ).

Справочник заместителя директора школы №   2 (2016) расскажет о полезном программировании и хакатоне. Автор статьи Сергей Камянецкий

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

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

Что такое программа поэтапного внедрения образовательных ИТ-направлений

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

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

Сегодня ИТ-направление в школе № 657 охватывает учащихся 2-7-х классов; модульная структура программы способствует последовательному формированию у школьников навыков в области информатики, программирования и компьютерного творчества.

Справочник заместителя директора школы №   5 (2016) расскажет о технологии дополненной реальности. Авторы статьи: Михаил Коростелев, Ирина Кузнецова, Мария Жигалина

Основные задачи программы поэтапного внедрения образовательных ИТ-направлений:

  • сформировать у обучающихся навыки алгоритмического и проектного программирования;
  • изучить на практике применение ИКТ в различных предметных областях и на их стыках;
  • научить формулировать проблему, ставить задачи, искать и использовать информацию, планировать и реализовывать задуманное;
  • развить навыки выступать публично, соревноваться и делиться опытом, участвовать в мастер-классах, выставках, олимпиадах, хакатонах и фестивалях;
  • развить пространственное мышление, аналитические способности, пробудить интерес к научным исследованиям.

Совместно с Московской школой юного программиста мы разрабатываем и внедряем образовательные направления, которые развивают навыки алгоритмического и проектного программирования для возрастных групп: младшей (2-3-й класс), средней (4-5-й класс) и старшей (6-7-й класс). Среды и языки программирования для возрастных групп представлены в таблице.

Среды, языки и ресурсы программирования для возрастных групп в школе № 657

НаправлениеМладшая группаСредняя группаСтаршая группа
ПроектноеScratchApp InventorJava
АлгоритмическоеCode.orgBlocklyPython

К СВЕДЕНИЮ

Чем занимается ТемоЦентр

Учредитель ГАОУ ДПО «Московский центр технологической модернизации образования» (ТемоЦентра) – Департамент образования города Москвы. Приоритет в работе ТемоЦентра (temocenter.ru) – образовательная деятельность по программам дополнительного профессионального образования в области информационных технологий, дополнительного образования детей, развитие техносферы образовательных организаций, обеспечение информационной прозрачности и взаимодействия с общественностью, а также аналитическое и техническое сопровождение системы образования города Москвы.

ТемоЦентр реализует городские проекты: «Школа новых технологий», «Повышение финансовой грамотности населения». С сентября 2015 года ведет вещание Московский образовательный интернет-телеканал, который объединил на одной платформе различные медиаресурсы о столичном образовании.

Что изучает младшая возрастная группа

Для учащихся 2-3-х классов реализуем проектное и алгоритмическое направления на начальном уровне.

Игроведение на Scratch: проектное направление

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

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

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

ПРИМЕР

Игра «Арифметический тренажер». Персонаж загадывает последовательно 10 арифметических примеров, игрок должен давать правильные ответы. Каждый правильный ответ приносит игроку одно очко (рис. 1).
Рис. 1. Игра «Арифметический тренажер»

Ученики создают проекты:

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

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

ПРИМЕР

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

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

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

Алгоритмическое программирование в Code.org

Ресурс Code.org ориентирован на обучение новичков и школьников. Code.org– некоммерческая организация, которая популяризует программирование, и это бесплатная онлайн-платформа для обучения программированию в игровой форме. Среди партнеров сайта Apple, Microsoft, Google, Amazon. Цель – сделать программирование обычным школьным уроком.

На первом занятии Марк Цукерберг – один из разработчиков и основателей известной социальной сети – рассказывает, зачем вообще учиться программировать. Ученики работают над проектами в Scratch, тренируют навыки использовать алгоритмические конструкции в среде Code.org.

ПРИМЕР

Задание: используя цикл, переменную «счетчик» и математические блоки, помоги пчеле собрать весь нектар (рис. 2).
Рис. 2. Помогите пчеле собрать нектар

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

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

Какие программы осваивает средняя возрастная группа

СПРАВКА

Одна из самых популярных компьютерных игр в мире – Minecraft – написана на Java. Программисты-геймеры, желающие расширить возможности игры, могут разрабатывать плагины под Minecraft на языке Java

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

Проектное направление в App Inventor

App Inventor – среда визуальной разработки Android-приложений, которая требует от пользователя минимальных знаний программирования. Для учеников нашей школы мы реализуем курс проектного программирования под телефоны и планшеты на базе операционной системы Android.

ПРИМЕР

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

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

Алгоритмическое программирование в Blockly

В визуальной среде программирования Blockly на blockly.ru учащиеся:

  • знакомятся со «взрослыми» языковыми конструкциями;
  • решают алгоритмические и олимпиадные задачи.

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

ПРИМЕР

Сумма четных чисел от 2 до N. Описание: пользователь вводит натуральное число N. Написать программу, которая суммирует все четные числа в диапазоне от 2 до N. Полученную сумму вывести на экран. В качестве образца можно использовать программу на рис. 4.
Рис 4. Программа-образец для вычисления суммы чисел последовательности

Какие задания выполняет старшая возрастная группа

В старшей группе занимаются ученики 6-7-х классов. Заключительный этап программы подготовки проходит по двум направлениям.

Программирование на языке Java: проектное направление

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

ПРИМЕР

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

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

ПРИМЕР

Разработка компьютерной игры: «Как определить, что прямоугольный снаряд из танка пересекает прямоугольную стену?», «Как сделать так, чтобы объекты перемещались по дуге, замедляясь и ускоряясь?» Такие проекты помогают учащимся оценить роль математики – понять назначение синуса и косинуса, изучить и закрепить формулы из курса физики.

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

В результате ученики готовы участвовать в хакатонах и научно-технических конференциях проектной направленности («Старт в науку» и пр.).

Программирование на языке Python: алгоритмическое направление

ВАЖНО

В последние годы спрос на разработчиков Python резко вырос в таких известных компаниях, как Reddit, Tumblr, YouTube и Pinterest

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

ПРИМЕР

Яша плавал в бассейне размером N x M метров и устал. В этот момент он обнаружил, что находится на расстоянии X метров от одного из длинных бортиков (не обязательно от ближайшего) и Y метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик?
Входные данные: вводятся 4 натуральных числа: N, M, X, Y (N ≠ M), разделенные пробелами. Все числа не превосходят 100.
Выходные данные: требуется вывести одно число – минимальное расстояние, которое должен проплыть Яша, чтобы выбраться на бортик.

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

СПРАВКА

Студии, которые используют Maya, получают «Оскар» за визуальные эффекты. Фильмы: «Матрица», «Властелин колец», «Кинг-Конг», «Золотой компас»

Интерес к программистам на Python возрастает. Этот язык используют Google и видеохостинг YouTube. На Python написана программа BitTorrent для обмена файлами.

Python используют в Maya – мощной системе трехмерного моделирования и создания мультипликации.

Такие компании, как Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, используют Python для тестирования аппаратного обеспечения.

Industrial Light & Magic, Pixar и другие, используют Python в производстве анимационных фильмов. NASA, Los Alamos, Fermilab, JPL используют Python для научных вычислений.

Нам важно Ваше мнение! Пожалуйста, оцените статью, выбрав один из пяти смайликов внизу страницы  (сервис доступен на сайте e.zamdirobr.ru).