Лабораторные работы
Лабораторные работы
Работы 1 и 2 являются вводными и сдаются преподавателю в конце занятия. Остальные лабораторные работы сдаются через git-репозиторий, поскольку требуют многократных обращений к коду, его оптимизации и рефакторинга. Оценка зависит в первую очередь от качества программного кода, а также от умения вести итеративную разработку от консистентной версии к консистентной (т. е. работающей, «компилируемой»). На командный проект (семестровую работу) выделен месяц, при этом каждую неделю надо предъявлять промежуточный результат.
№
| Название
| Цель и тема работы
| Недель
|
| Визуализация данных
| Использование Jupyter. Запись алгебраических выражений на языке программирования. Построение графиков с numpy и matplotlib.
|
|
| Исполнитель «Черепаха»
| Изучение базового синтаксиса языка Python 3: переменные, ветвления, циклы (в том числе вложенные). Функции без параметров и с параметрами. Логические операторы. Списки и кортежи. Физическое моделирование материальной точки.
|
|
| Картина и её рефакторинг
| Основы GitHub. Графика на pygame. Структурное программирование. Проектирование сверху-вниз. Рефакторинг. Проработка интерфейсов функций и его документация.
|
|
| Игра «Поймай шарик»
| Анимация. Движение шариков с отражением от стен. Подсчёт очков. Обработка событий от пользователя (мышь/клавиатура).
|
|
| «Пушка»
| Объектно-ориентированное программирование. Документация проекта. Проработка интерфейсов и контрактов функций и ответственности классов. Отношения между классами. Наследование, композиция. Ассоциация и её направленность.
|
|
| «Артиллерия»
| Проектирование игры в стиле artillery game.
Командная работа. Кооперация в GitHub.
Создание модулей и пакетов.
|
|
|