Skip to content

Latest commit

 

History

History
13 lines (13 loc) · 2.63 KB

File metadata and controls

13 lines (13 loc) · 2.63 KB

Темы для повторения к зачету

  1. Git. Что такое система контроля версий. Основные понятия: коммиты, ветки, слияния. Основные рекомендации к ведению репозиториев.
  2. Организация кода в Python: директории, модули, файлы, импорт модулей и объектов из них. Объект как основная сущность языка.
  3. Структуры данных. Мутабельность и иммутабельность. Списки, словари, строки, числа.
  4. ООП в Python: реализация наследования, полиморфизм, инкапсуляция. Методы классов и объектов, property, конструкторы.
  5. Numpy. Что такое массив. Отличие от списков. Размерность массивов. Векторные операции, отличие от последовательных операций.
  6. Потоки в Python. GIL, приоритет потоков. Многопоточные и многопроцессорные вычисления. Отличие потоков от процессов. Когда лучше использовать потоки, а когда процессы. Когда появляется выигрыш от параллелизации?
  7. Numba. На чем основано ускорение. Что такое JIT-компиляция. Декоратор njit. Аргументы декоратора. Сигнатура функции. Что это такое, на что влияет. Основные типы в сигнатурах.
  8. Составляющие хорошего кода. Архитектура, документация, тесты. Типы документации, инструменты для реализации. Типы тестирования.
  9. Юнит-тестирование. Unittest. TestCase. Итеративные тесты, subTest. Настройка окружения перед тестом с помощью setUp.
  10. Markdown, TeX. Чем подход TeX и Markdown отличается от визуальных текстовых редакторов. Основы синтаксиса формул.
  11. Jupyter notebook. Как устроен. Когда лучше применять, а когда нет.
  12. Matplotlib. Создание двухмерных графиков. Добавление линий и точек на график. Метки линий и легенда.