Skip to content

fipl-hse/2021-2-level-labs

Repository files navigation

Лабораторные работы для 2-го курса ФПЛ (2021/2022)

Coverage Status

В рамках предмета "Программирование для лингвистов" в НИУ ВШЭ - Нижний Новгород.

Преподаватели:

  • Демидовский Александр Владимирович - лектор
  • Кащихин Андрей Николаевич - преподаватель практики
  • Ураев Дмитрий Юрьевич - преподаватель практики
  • Кузнецова Валерия Андреевна - преподаватель практики

План лабораторных работ:

  1. Детектирование языка текста на основе доли пересечения наиболее частотных слов
    1. Дедлайн: 1 октября
  2. Детектирование языка текста на основе расчёта расстояния между векторными представлениями текстов
    1. Дедлайн: 22 октября
  3. Детектирование языка текста на основе модели N-грамм
    1. Дедлайн: 26 ноября
  4. Генерация текста на основе модели N-грамм
    1. Дедлайн: 17 декабря

История занятий

Дата Тема лекции Материалы практики
03.09.2021 Знакомство. Как Python запускает программы? Листинг кода
10.09.2021 Язык программирования Python. Историческая справка. Преимущества и недостатки языка. Виртуальная машина. Что такое git? Инструкции по настройке
17.09.2021 Типы данных. Числа. Введение в строки: строка - последовательность. Числа. Срезы. Листинг кода
24.09.2021 Строки как последовательности, штурм задачи про поиск вхождений строки Строки. Листинг кода
01.10.2021 Форматирование строк. Списки как последовательности. Сдача лабораторной работы №1.
08.10.2021 Словари - изменяемые неупорядоченные отображения. Списки. Листинг кода
15.10.2021 Функции - способ организации и переиспользования кода. Словари. Листинг кода
29.10.2021 Области видимости: локальная, объемлющая, глобальная и встроенная. Сдача лабораторной работы №2.
12.11.2021 Введение в ООП: общая мотивация, классы, метод __init__. Практика создания классов. Листинг кода
19.11.2021 Инкапсуляция, метод __str__. Работа с классами и инкапсуляция атрибутов. Листинг кода
26.11.2021 Наследование, особенности наследования атрибутов и методов. Сдача лабораторной работы №3.
03.12.2021 Инкапсуляция, наследование атрибутов через метод super(). Работа с классами, практика создания классов родителей и наследников. Листинг кода
10.12.2021 Полиморфизм: мотивация, концепция, реализация. Работа с классами, практика создание полиморфных классов. Листинг кода
17.12.2021 Открытая консультация по пройденным темам. Сдача лабораторной работы №3.
24.12.2021 Экзамен. Сдача просроченных лабораторных работ.

Литература

Базовый уровень

  1. Mark Lutz. Learning Python.
  2. Хирьянов Тимофей Фёдорович. Видеолекции. Практика программирования на Python 3.
  3. Хирьянов Тимофей Фёдорович. Видеолекции. Алгоритмы и структуры данных на Python 3.
  4. Official Python 3 documentation.

Продвинутый уровень

  1. Mark Lutz. Programming Python: Powerful Object-Oriented Programming
  2. J. Burton Browning. Pro Python 3: Features and Tools for Professional Development.

Порядок сдачи и оценивания лабораторной работы

Порядок сдачи:

  1. лабораторная работа допускается к очной сдаче.
  2. студент объяснил работу программы и показал её в действии.
  3. студент выполнил мини-задание ментора по некоторой модификации кода.
  4. студент получает оценку:
    1. соответствующую ожидаемой, если все шаги выше выполнены и ментор удовлетворён ответом студента
    2. на балл выше ожидаемой, если все шаги выше выполнены и ментор решает поощрить студента за отличный ответ
    3. на балл ниже ожидаемой, если лабораторная работа сдаётся на неделю позже срока сдачи и выполнены критерии в 4.1
    4. на два балла ниже ожидаемой, если лабораторная работа сдаётся на две недели и позже от срока сдачи и выполнены критерии в 4.1

Замечание: студент может улучшить оценку по лабораторной работе, если после основной сдачи выполнит задания следующего уровня сложности относительно того уровня, на котором выполнялась реализация.

Лабораторная работа допускается к очной сдаче, если выполнены все пункты ниже:

  1. представлена в виде пулл реквеста (Pull Request, PR) с правильно составленным названием по шаблону: Laboratory work #<NUMBER>, <SURNAME> <NAME> - <UNIVERSITY GROUP NAME>. Пример: Laboratory work #1, Kuznetsova Valeriya - 20FPL1.
  2. имеет заполненный файл target_score.txt с ожидаемой оценкой. Допустимые значения: 4, 6, 8, 10.
  3. имеет "зелёный" статус - автоматические проверки качества и стиля кода, соответствующие заданной ожидаемой оценке, удовлетворены.
  4. имеет лейбл done, выставленный ментором. Означает, что ментор посмотрел код студента и удовлетворён качеством кода.

Ресурсы

  1. Таблица успеваемости

Запуск тестов

Для запуска тестов выполните следующую команду в папке с лабораторной работой:

python -m unittest discover -p "*_test.py" -s .

Что делать если в родительском репозитории есть изменения и они мне нужны?

  1. Создаем upstream таргет в репозитории:
git remote add upstream https://github.com/fipl-hse/2021-2-level-labs
  1. Получаем данные об изменениях в удаленном репозитории:
git fetch upstream
  1. Обновляем свой репозиторий с изменениями из удаленного репозитория:
git merge upstream/master

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published