Методические указания к лабораторным работам - mipt-cs/course-site-python3 GitHub Wiki
№1. Практика: Черепашка
- Ничего рассказывать предварительно про язык не нужно. Лучше сразу открыть свой монитор на полный экран и показать как запускать интерпретатор ipython3. Помочь девушкам и тем, кто не справляется сам. Можно использовать взаимопомощь — выделить одного-двух студентов, которые шарят, чтобы они помогли запустить интерпретатор другим.
- Прямая цель лабы — быстро ввести студентов в практику использования управляющих конструкций Python 3. Скрытая цель лабы — показать, что программирование — это не занудно. Некоторые студенты со школы знакомы с исполнителем Черепашка в ЛОГО-мирах, КуМир и PascalABC.NET. Другим будет просто забавно.
- Можно вначале показать как управлять черепашкой интерактивно, из консоли питона, и только потом запускать скрипты.
№2. Практика: Робот
- Будьте в хорошем настроении. Спросите, понравилась ли им прошлая работа с Черепахой, и доделывали ли они её дома. Если кто-то захочет показать чему научился с Черепахой, то пусть вам покажет. Покажите, что вам интересны успехи каждого студента персонально0!
- В этой работе продолжаем нескучным образом изучать циклы и условное выполнение. Использовать интерактивный режим или Jupyter не следует! Запускаем из консоли.
- Обязательно пройдитесь по всем студентам и покажите как запускать задачи на проверку из консоли, а также как запустить их проверку разом (all_tasks.py), чтобы они видели свой прогресс.
- Сложными местами будет использование подпрограмм и переменных. Можно в некоторый момент призывать всех ко вниманию и каждого вида задач рассказывать у доски решение одной задачи.
- Следите, чтобы даже у самых отсталых студентов не было ступора. Если мы "потеряем" их сейчас, дальше они совсем просядут. Нужно помочь им увлечься программированием именно на этой лабе!
- В конце напомните, что дома стоит доделать работу про Робота.
№3. Контест: условия, циклы, однопроходные алгоритмы
Этот контест лёгкий, но у некоторых студентов вопросы возникнуть могут. Надо помогать им в меру, оставляя немного интрики (не доделывая им задачи до конца).
Будьте позитивны, поддержите у студентов ощущение, что программирование — это очень просто. Каждого, кто успешно закончит контест, поздравьте.
№4. Практика: графические примитивы
Знакомим студентов с тем, как разделять код на функции.
- Когда все выполнят задание 1, нужно заострить внимание на себе и сказать провернуть такую игру:
Пусть каждый придумает как можно немного изменить свою картинку (на что у самого человека ушло бы не более 30 сек) и попросит соседа справа чтобы тот сделал это в коде, ни в коем случае не рассказывая ему каких либо пояснений. Это нужно чтобы каждый человек попробовал быстро разобраться в совершенно новом
говенномнекачественном коде и сознательно изменил в нем что то. На это дается пять минут. Цель — вызвать отвращение и дискомфорт от поддержки такого кода, как формирование причины отказа от него и перехода к чему то более удобному - функциям. - Если остается время — стоит в конце всей лабы дать задание на укрепление материала по функциям с параметрам. Это может быть например написание проги с перемещением человечка или чего то другого по экрану (использование цикла + функции с параметром) или чего то подобного.