Применение техник «Выделение вычислений» и «Улучшение структуры действий» #
Формат проведения семинара #
Данное занятие будет проведено в формате семинара. На семинаре будут обсуждаться результаты применения техник функционального программирования к ранее реализованному императивному коду.
Требования к исходному коду #
В качестве основы для применения техник рекомендуется использовать исходный код, который был разработан студентом самостоятельно. Подходит код любой лабораторной работы, выполненный для защиты результатов по предыдущим курсам по программированию. Необходимо использовать код, которым слушатели смогут свободно поделиться.
Удобнее всего применять предложенные подходы к языкам программирования, ориентированных на запуск в средах с функцией автоматической сборки мусора. То есть данные подходы плохо применимы к системным языкам программирования с ручным управлением памятью (Си, C++).
Для работы рекомендуется выбирать код длиной не более тысячи строк. Можно взять не всё приложение, а только его подсистему.
Подготовка к семинару #
Для участия в семинаре необходимо подготовить выступление, в рамках которого рассмотреть процесс изменения исходного кода. Выступление должно описывать:
- Изначальное состояние исходного кода. В описание должно входить:
- Описание назначение кода.
- Описание изначальной связи методов друг с другом.
- Описание результата применения техник к коду. В описании должно быть:
- Пример применения техник к ряду методов.
- Изменение в структуре методов.
Помимо презентации также необходимо подготовить Git-репозиторий, который будет включать в себя как исходное состояние, так и фиксацию состояний во время применения данных техник.
Подготовленный набор материалов: презентация и ссылка на репозиторий загружаются в качестве ответа на задание.
Проведение семинара #
Каждому слушателю курса необходимо представить свою работу и обсудить результаты других слушателей курса.
- Каждый студент представляет свою работу в течение 5-10 минут.
- После представления работы происходит обсуждение до 5 минут. Тематика обсуждения совпадает с темой курса.
- Оценка за семинар включает в себя как качество доклада, так и качество вопросов и комментариев.