Результаты летней школы Python для студентов кафедры АСОУ МИРЭА

Георгий Курячий и Арсений Масленников доработали план-конспект интенсива по языку программирования Python3 для студентов базовой кафедры АСОУ № 239 МИРЭА при ФГБУ НИИ «Восход». Помимо рассмотренных тем в план вошли многие упражнения и некоторое количество самостоятельных практических заданий.

Несколько слов о прошедшем интенсиве.

Распорядок дня

В один учебный день входило 6 академических часов занятий, всего учебных дней было 10.

  • 10:00-10:30 — повторение и ответы на вопросы
  • 10:30-13:30 — новая тема (лекции и практические упражнения вместе с преподавателем)
  • 13:30-14:00 — обед
  • 14:00-16:00 — решение практических задач

Тематика

В первый день бело немного разговоров о Linux И свободном ПО, в дальнейшем дистрибутив Linux (это был загружаемый по сети Альт рабочая станция 8) использовался как системная платформа и как основа для примеров на базе командной строки.

Сам Python3 целиком за 10 дней не объяснить, так что базовым вещам (структурам данных и алгоритмическим конструкциям) мы уделили большую часть времени, а более сложные темы и темы, требующие достаточного практического опыта, рассмотрели в обзорном порядке. Так, объектной модели Python3 мы касались в течение всего курса, а вот в идеологию и технологию объектного проектирования вдаваться не стали. Так же и с многочисленными модулями и фреймворками Python — их слишком много и они слишком интересны сами по себе, чтобы пытаться втиснуть рассказ о них в один курс. Поэтому мы подробно рассмотрели только несколько.

Оказалось полезно поизучать библиотекту Pygame, которая используется для написания простейших аркадных игр:

  • У ребят появилась возможность «пощупать» результаты своей учёбы на живом и интересном практическом инструменте
  • Pygame — хорошая объектная библиотека, на основании которой неплохо объясняется объектная модель Python3
  • Как всякая растровая графика, Pygame требует уверенного владения математическим аппаратом (в рамках серьёзной школьной программы), это создало дополнительный интерес для тех ребят, которые ешё неуверенно программируют, зато математику знают на отлично.

Итоги

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

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