Методические рекомендации «Дистанционные занятия в IT: чат-бот на Python»
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ АВТОНОМНОЕ УЧРЕЖДЕНИЕ ДОПОЛНИТЕЛЬНОГО ОБРАЗОВАНИЯ ЯРОСЛАВСКОЙ ОБЛАСТИ
ЦЕНТР ДЕТСКО-ЮНОШЕСКОГО ТЕХНИЧЕСКОГО ТВОРЧЕСТВА
Детский технопарк «Кванториум»
Методические рекомендации
«Дистанционные занятия в IT: чат-бот на Python»
Возраст обучающихся 12-14 лет
Длительность 6 ак.часов
Педагог доп.образования Баранова Е.Д.
Рыбинск
2020 г.
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Актуальность
В условиях возросшего темпа жизни современных людей и огромного количества информации, подлежащей обработке и формализации, на решение стандартных задач по четкому и известному алгоритму отводится много времени и сил сотрудников. Как помочь людям сэкономить свои ресурсы для решения более сложных и креативных задач?
Чат-бот – это программа, использующая для работы интерфейс мессенджера, основная функция такой программы — распознать запрос собеседника и корректно отреагировать на него. Существует тип задач и проблем, с которыми автоматические диалоговые системы (чат-боты) справляются лучше, экономя время и человеческие ресурсы. Любая операция, которая проводится по строго очерченному алгоритму и не требует от сотрудников креативных решений, может быть передоверена чат-боту. Обучающимся предлагается создать помощника для найма на работу кадровому отделу крупной компании. Программа должна осуществлять первоначальный отсев кандидатов, исходя из формальных критериев (например, место жительства и готовность к переезду, уровень образования) и автоматически назначать собеседование с подходящими.
Цель:
Сконструировать сценарии с множественным выбором, на основе которых создать программу с оконным интерфейсом, имитирующую работу чат-бота.
Задачи:
познакомить с ЯП Python, историей, областями применения, сформировать понимание, что такое язык программирования, научиться оперировать базовыми алгоритмическими конструкциями с помощью блок-схем;
познакомить с синтаксисом ЯП Python, отработать навыки работы с базовыми типами данных и функциями;
познакомить с альтернативной средой разработки кода, отработать навыки работы с алгоритмическими конструкциями - множественное ветвление, циклы;
с помощью методов генерации идей найти решение кейса, отработать навыки работы с алгоритмическими конструкциями - функции и модули Python, подключение библиотек.
Ожидаемые образовательные результаты обучающихся:
Прогнозируется, что обучающиеся будут:
знать историю, области применения ЯП Python, понятие язык программирования, уметь оперировать базовыми алгоритмическими конструкциями с помощью блок-схем;
знать синтаксис ЯП Python, составлять программы с базовыми типами данных и функциями;
уметь разрабатывать программы в различных средах программирования, применять алгоритмические конструкции - множественное ветвление, циклы;
уметь с помощью методов генерации идей находить решение кейса, работать с алгоритмическими конструкциями - функции и модули Python, подключать библиотеки.
Минимально необходимый уровень входных компетенций: понимание файловой структуры ПК, навыки пользовательского интерфейса ОС Windows, навык работы с интернет браузером, понятие базовых конструкций алгоритмического мышления.
Рассчитан на 6 ак.часов для школьников 12-14 лет.
Сценарий хода занятий
Дистанционная форма занятий предполагает получение образовательного контента в заочной форме, использование специфических образовательных технологий, базирующихся на современных методиках обучения, технических средствах связи и передачи информации.
Мотивационно-ориентационный блок при дистанционной форме организации обучения приобретает особую значимость в структуре занятий. На этом этапе обучающимся необходимо понять — зачем изучать данную тему, увидеть ее связь с ключевыми идеями курса, определить степень своей готовности к изучению, найти предмет личного интереса. Мотивация строится с опорой на познавательный интерес или прагматическую значимость.
Материалы | Электронный ресурс/инструмент коммуникации |
Рекламный ролик МТС | Чат-бот | Речевой детокс https://www.youtube.com/watch?v=flMkRsV8Gvo
Статья в журнале “Код” За что все любят Python https://zen.yandex.ru/media/code/za-chto-vse-liubiat-python-5ce3c9573b662600b29dad30 | Онлайн-конференция Zoom |
Что делаем:
-погружаемся в проблемное поле и содержание кейса;
-фиксируем востребованность навыков программирования во всех областях общественной жизни;
-интерактивная мини-лекция о ЯП Python, истории, областях применения и последующее обсуждение;
-дискуссия на тему философии программирования от разработчиков Python, называемой «The Zen of Python»;
-составление блок-схем алгоритмов.
Синтаксис ЯП Python
Материалы | Электронный ресурс/инструмент коммуникации |
Установка https://www.python.org/downloads/
Python. Обучение программированию | Онлайн-конференция Zoom Совместная работа в Google Docs |
Что делаем:
-знакомимся с синтаксисом Python (запуск Python IDE);
-понятие интерпретатора;
-знакомство с функциями print() и input();
-решение мини-кейсов (синтаксис Python, типы данных,ввод и вывод данных, преобразование типов данных).
Алгоритмические конструкции - множественное ветвление, циклы
Материалы | Электронный ресурс/инструмент коммуникации |
Для объяснения, почему вложенные ветвления это плохо https://habr.com/ru/post/179069/
| Онлайн-конференция Zoom Совместная работа в Google Docs Интерактивная среда разработки Google colab |
Что делаем:
-знакомимся с понятием переменные, присваивание значений переменным;
-что такое операторы сравнения? разбираем базовые логические операции;
-ветвления в алгоритмах, решение мини-кейсов;
-обсуждаем, в каких ситуациях требуется совершить выбор больше, чем из двух путей, нахождение решения (инструмент множественное ветвление if-elif-else);
-знакомство с интерактивной средой разработки Google colab (или другим средством, ресурсом).
Конструирование сценариев с множественным выбором для программы
Материалы | Электронный ресурс/инструмент коммуникации |
Про методы генерации идей https://igorzuevich.com/metody-generacii-idej-7-samyx-rabotayushhix/
Пример проектирования архитектура бота https://sendpulse.com/ru/blog/chat-bot-for-cafe-case-study Python. Обучение программированию https://younglinux.info/tkinter.php | Онлайн-конференция Zoom Совместная работа в Google Docs Интерактивная среда разработки Google colab |
Что делаем:
-закрепляем правила синтаксиса ЯП Python - знакомимся с понятием функции и модули, подключаемые библиотеки;
-решение мини-кейсов для отработки новых понятий;
-генерируем идеи по решению кейса, обсуждаем;
-знакомимся с основами работы с базовыми элементами интерфейса (виджетами);
-изучаем основные свойства и методы кнопок, меток, текстовых полей, списков, флажков, холста и меню;
-проектируем сценарии с множественным выбором для программы;
-программируем программу с оконным интерфейсом, имитирующую работу чат-бота;
-презентация решений;
-итоговая рефлексия.
Использованные источники информации
Марк Лутц – Изучаем Python и программируем на Python (2 тома)
Марк Саммерфилд - "Программирование на Python 3. Подробное руководство"
https://pythonworld.ru/samouchitel-python
https://habr.com/ru/post/150302/, https://younglinux.info.
https://sendpulse.com/ru/blog/chat-bot-for-cafe-case-study
https://igorzuevich.com/metody-generacii-idej-7-samyx-rabotayushhix/