# Производственная практика (Информатика/АиСД)
## Начало работы
После прочтения данного документа __всем студентам__:
- Заполнить форму - https://forms.gle/EUWLk3Z9WrZY8pmx7
- Указать желаемые темы заданий для дальнейшего распределения (**дедлайн - 18.06 включительно**)
- Ознакомиться с имеющимися материалами (курсов/заданий/вариантов защит) и подготовить вопросы
- Если готовы приступить к выполнению уже сейчас
- дедлайн по формированию вопросов - 22.06 (раньше - лучше)
- Для коммуникации/вопросов: https://t.me/+-wiAMTnADrZhZjYy
## Оценивание
*Прим.: небольшое обновление для АиСД*
| | Удовлетворительно | Хорошо | Отлично |
| ----------- | ----------------- | ------ | ------- |
| Информатика | 3 варианта на защиту | 3 варианта за защиту | 3 варианта на защиту |
| АиСД | 2 варианта на защиту** | 1 вариант на защиту + 1 задание онлайн курса | 1 вариант на защиту + 1 задание онлайн курса |
** - по результатам заполненой гугл-формы - 2 варианта или 2 задания
## Реализация вариантов на защиту / задач курса
### Общее
Вариант на защиту включает в себя три задачи на программирование (или одну тестовую и две на программирование - по согласованию)
- Cложность задач должна увеличиваться (от 1 к 3)
- Задачи реализовываются в Moodle, как элемент курса "Тест" (quiz)
- Задачи на программирование реализуются как задача типа CodeRunner
- Подробнее о плагине/задачах - [документация](https://github.com/trampgeek/moodle-qtype_coderunner/blob/master/Readme.md)
- Код проверок реализуется на Python
- Задачи на программирование должны быть параметризируемыми и рандомизируемыми
- для этого используется шаблонизатор Twist (используется CodeRunner, подробнее - в документации)
- Все результаты студента оформляются в виде PR в соответствующем репозитории (добавлены по github-аккаунтам из таблицы практики)
- Информатика - https://github.com/moevm/cs-teachers-support
- АиСД - https://github.com/moevm/alg-teachers-support
### Информатика
Язык реализации решений
- Python
Онлайн-курс для понимания теории
- 1й семестр - https://e.moevm.info/course/view.php?id=68
- 2й семестр - https://e.moevm.info/course/view.php?id=69
Старые варианты защит - https://e.moevm.info/course/view.php?id=23 (вы добавлены по moodle-аккаунтам из таблицы практики)
- Введение в архитектуру компьютера - 2022 Защита лабораторной работы №2
- Машина Тьюринга и конечные автоматы - 2022 Защита лабораторной работы №3
- Парадигмы программирования - Защита лабораторной работы №1 (весна 2023)
- Введение в алгоритмы и структуры данных - Защита лабораторной работы №2 (весна 2023)
- Введение в анализ данных - Защита лабораторной работы №3 (весна 2023)
### АиСД
Язык реализации решений
- Python
- C/C++
Курс/задачи:
- Онлайн-курс для понимания теории - https://e.moevm.info/course/view.php?id=45
- Старые варианты защит отсутствуют
- Прототипы задач в онлайн-курсе
- Элементы в разделах курса "Теор. вопросы для защиты / Билеты на защиту"
## Реализация задач онлайн-курса
### АиСД
Язык реализации решений
- Python
- C/C++
Состав результата:
- 1 задание включает в себя 3 задачи (см. раздел "Реализации вариантов на защиту / задач курса")
Курс/задачи:
- Онлайн-курс - https://e.moevm.info/course/view.php?id=45
- Темы заданий
- Для студентов, реализующих варианты на защиту, задание курса соответствует теме раздела
- Для студентов, не реализующих варианты на защиту, темы заданий
- Тестирование
- Оценка алгоритма по памяти, времени
- Сортировки (быстрая/вставками/посчетом)
- Самобалансирующиеся деревья (АВЛ/КЧ)