Содержание пакета (3 курса)
1. 101 ВОПРОС c собеседований | Python 5.00
Введение
1 урок
1.
Вступление
↗
Структуры данных
20 уроков
1.
Какие типы данных есть в Python?
↗
2.
Какая разница между множеством и словарем?
↗
3.
Что такое frozenset?
↗
4.
Назови три основных типа копирования объектов?
↗
5.
Для чего используется метод get()?
↗
6.
Что такое генератор?
↗
7.
Что такое итератор?
↗
8.
Какая разница между dict и json?
↗
9.
Что может быть ключами и значениями в словаре?
↗
10.
Что такое динамическая типизация?
↗
11.
Что такое комплексные числа и где они применяются?
↗
12.
Что такое id объекта и как его получить?
↗
13.
Что такое хэшируемость (hashable)?
↗
14.
Чем bytes отличается от bytearray?
↗
15.
Для чего нужен memoryview и с какими объектами он работает?
↗
16.
Что такое StopIteration?
↗
17.
Чем .get() отличается от .setdefault()?
↗
18.
В чем различие между is и ==?
↗
19.
Какую структуру данных использовать для реализации стека (LIFO)?
↗
20.
Что такое OrderedDict?
↗
Функции
20 уроков
1.
Чем отличаются аргументы от параметров функции?
↗
2.
Что такое *args?
↗
3.
Что такое **kwargs?
↗
4.
Чем yield отличается от return?
↗
5.
Чем отличается local от global области видимости?
↗
6.
Что такое nonlocal? Когда его используют?
↗
7.
В чем заключается опасность рекурсии?
↗
8.
Что такое чистая функция?
↗
9.
Как работает аннотация типов?
↗
10.
Что такое лямбда-функция?
↗
11.
Зачем нужна аннотация типов?
↗
12.
Как работает функция reduce?
↗
13.
Что такое map()?
↗
14.
Что такое замыкание?
↗
15.
Как передать функцию в качестве аргумента?
↗
16.
Что такое каррирование?
↗
17.
Может ли функция возвращать несколько значений?
↗
18.
Какие преимущества функций?
↗
19.
Какая опасность использования изменяемых объектов по умолчанию?
↗
20.
Что означает, что функции являются "объектами первого класса"?
↗
Файлы
10 уроков
1.
Чем отличается режим 'r' от 'rb' при открытии файла?
↗
2.
Как прочитать файл построчно?
↗
3.
Что такое менеджер контекста? Почему его стоит использовать?
↗
4.
Как работать с JSON-файлами?
↗
5.
Как получить список всех файлов в директории?
↗
6.
Как обработать несколько файлов одновременно?
↗
7.
Чем отличается 'w' от 'a' при открытии файла?
↗
8.
Зачем нужны pickle файлы?
↗
9.
Что такое кодировка файла?
↗
10.
Как обработать большой файл без чтения в память?
↗
Исключения
10 уроков
1.
Чем исключения отличаются от ошибок компиляции?
↗
2.
Для чего нужен блок finally?
↗
3.
Когда возникает AttributeError?
↗
4.
Когда возникает IndexError?
↗
5.
Как правильно обрабатывать исключения при работе с файлами?
↗
6.
Как отловить все исключения?
↗
7.
Когда возникает AssertionError?
↗
8.
Чем отличается except Exception от except BaseException?
↗
9.
Что делает блок else в try-except?
↗
10.
Как правильно логировать исключения?
↗
Декораторы
10 уроков
1.
Что такое декоратор?
↗
2.
Зачем передают func в декоратор?
↗
3.
Что делает декоратор @staticmethod?
↗
4.
Что делает functools.wraps и зачем он нужен?
↗
5.
Что такое декоратор класса?
↗
6.
Что делает декоратор @property?
↗
7.
Что такое декоратор @abstractmethod?
↗
8.
В чем разница между декоратором функции и декоратором класса?
↗
9.
Чем отличается @staticmethod от @classmethod?
↗
10.
Что такое декоратор с параметрами?
↗
Генераторы
10 уроков
1.
Как создать генератор с помощью yield?
↗
2.
Что делает ключевое слово yield from?
↗
3.
Что такое корутины и как они связаны с генераторами?
↗
4.
Как вызвать исключение в генераторе с помощью throw()?
↗
5.
Что такое подгенераторы?
↗
6.
Как закрыть генератор с помощью close()?
↗
7.
Зачем нужны генераторы выражений?
↗
8.
Как создать генератор с состоянием?
↗
9.
В чем разница между генераторами и корутинами?
↗
10.
Как использовать генераторы вместе с модулем itertools?
↗
ООП
20 уроков
1.
Какие основные принципы ООП?
↗
2.
Объясни понятия класса и объекта.
↗
3.
Что такое self в методах класса?
↗
4.
Как работает наследование?
↗
5.
Что такое инкапсуляция?
↗
6.
Для чего нужны методы __getattr__ и __setattr__?
↗
7.
Объясни принцип полиморфизма.
↗
8.
Что такое перегрузка методов и операторов?
↗
9.
Отличие метода __new__ от __init__?
↗
10.
Что такое магические методы?
↗
11.
Что такое классы-данных (dataclasses)?
↗
12.
Чем отличается isinstance() от type()?
↗
13.
Для чего нужны методы __str__ и __repr__?
↗
14.
Что такое абстракция?
↗
15.
Для чего нужны __slots__?
↗
16.
Как проверить, является ли объект экземпляром класса?
↗
17.
Что такое миксины?
↗
18.
Что такое абстрактные методы и классы?
↗
19.
Что такое duck typing?
↗
20.
Что такое дескрипторы и как они работают?
↗
Последняя...
1 урок
1.
101-я
↗
Конец
1 урок
1.
Заключение
↗
2. Python Backend собеседование | 330 вопросов + 501 тест 5.00
Вступление
2 урока
1.
О курсе
↗
2.
Зачем нужен этот курс?
↗
Git и контроль версий
15 уроков
1.
Что такое Git и для чего он нужен?
↗
2.
Чем Git отличается от систем контроля версий типа SVN?
↗
3.
Что такое репозиторий? Чем отличается локальный от удаленного?
↗
4.
Что такое коммит и как его создать?
↗
5.
Чем отличается git fetch от git pull?
↗
6.
Что такое ветка в Git?
↗
7.
Чем отличается git merge от git rebase?
↗
8.
Что делает git push и git pull?
↗
9.
Как посмотреть историю коммитов?
↗
10.
Что такое конфликт при слиянии веток и как его решать?
↗
11.
Что такое git stash и как его использовать?
↗
12.
Как сравнить две ветки или коммита?
↗
13.
Что такое cherry-pick и когда его используют?
↗
14.
Что такое submodule и зачем он нужен?
↗
15.
Что делает git bisect и как помогает находить баги?
↗
База 150 вопросов
6 уроков
1.
О данном модуле
↗
2.
Раздел 1
↗
3.
Раздел 2
↗
4.
Раздел 3
↗
5.
Раздел 4
↗
6.
Раздел 5
↗
Soft skills
2 урока
1.
Soft skills: расскажи о себе
↗
2.
Soft skills: как ты работаешь
↗
Python
15 уроков
1.
Что такое GIL?
↗
2.
Что делают глубокая и поверхностная копия в Python?
↗
3.
Что такое *args, **kwargs и когда их использовать?
↗
4.
Что такое lru_cache и когда его использовать?
↗
5.
Что такое hash и как он работает?
↗
6.
Разница между модулем, пакетом и пространством имён.
↗
7.
Как работает сборщик мусора в Python?
↗
8.
Разница между @dataclass и namedtuple?
↗
9.
Чем отличаются dict.setdefault() и collections.defaultdict()?
↗
10.
Разница между sort() и sorted()?
↗
11.
Как реализовать стек и очередь в Python?
↗
12.
Чем отличается import module от from module import func?
↗
13.
Что делает if __name__ == "__main__":?
↗
14.
Как работает модуль os?
↗
15.
В чём разница между json и pickle?
↗
FastAPI
20 уроков
1.
Как запустить простое FastAPI-приложение?
↗
2.
Что такое FastAPI и чем он отличается от Flask и Django?
↗
3.
Что такое эндпоинт и какие у него особенности в FastAPI?
↗
4.
Чем отличается асинхронный эндпоинт от синхронного?
↗
5.
Как описать GET, POST, PUT, DELETE запросы в FastAPI?
↗
6.
Чем отличаются query-параметры от path-параметров?
↗
7.
Как обрабатывать тело запроса (request body) в FastAPI?
↗
8.
Как задать значения по умолчанию для query или path параметров?
↗
9.
Что такое OpenAPI и как FastAPI с ним работает?
↗
10.
Что такое tags в OpenAPI документации и зачем они нужны?
↗
11.
Как работает dependency injection и какие у него плюсы?
↗
12.
Что такое Pydantic модели?
↗
13.
Как валидация данных работает в FastAPI?
↗
14.
Как тестировать FastAPI приложения?
↗
15.
Как настроить CORS?
↗
16.
Как работает аутентификация в FastAPI?
↗
17.
Что такое middleware и для чего оно используется?
↗
18.
Что такое BackgroundTasks и какие у него преимущества?
↗
19.
Что такое response_model и зачем его использовать в эндпоинтах?
↗
20.
Что такое HTTPException и когда её использовать?
↗
База данных (БД)
20 уроков
1.
Что такое реляционная база данных?
↗
2.
Что такое SQL?
↗
3.
Что такое FOREIGN KEY?
↗
4.
Чем отличается INNER JOIN от LEFT JOIN?
↗
5.
Что делает GROUP BY и HAVING?
↗
6.
Что такое транзакция и какие есть у него свойства?
↗
7.
Чем LIMIT отличается от OFFSET?
↗
8.
Что такое индекс и зачем он нужен?
↗
9.
Что такое нормализация БД?
↗
10.
Что такое VIEW и MATERIALIZED VIEW?
↗
11.
Что такое N+1 проблема? Как избежать?
↗
12.
Как работает репликация баз данных?
↗
13.
Что такое NoSQL? Когда использовать?
↗
14.
Что такое connection pooling и какие у него плюсы?
↗
15.
Что такое database normalization?
↗
16.
Как работает блокировка в БД? Уровни изоляции.
↗
17.
Какие бэкапы есть в БД и как их настроить?
↗
18.
Что такое ORM? Плюсы и минусы.
↗
19.
Как работает SQLAlchemy?
↗
20.
Что такое PARTITIONING в PostgreSQL?
↗
Docker
15 уроков
1.
Что такое Docker и зачем он нужен?
↗
2.
Чем отличается Docker от виртуальной машины?
↗
3.
Что такое контейнер и чем он отличается от образа?
↗
4.
Что такое Docker Engine?
↗
5.
Что делает команда docker run?
↗
6.
Для чего используется команда COPY и ADD?
↗
7.
Что такое многоэтапная сборка?
↗
8.
Что такое Docker Hub?
↗
9.
Как подключиться в терминал работающего контейнера?
↗
10.
Чем отличается docker exec от docker attach?
↗
11.
Как ограничить использование CPU и памяти контейнером?
↗
12.
Что такое Docker volume и зачем он нужен?
↗
13.
Как работает сеть по умолчанию в Docker?
↗
14.
Чем отличаются bridge, host и none сети?
↗
15.
Как создать свою сеть в Docker?
↗
API, REST API, HTTP
20 уроков
1.
Что такое API?
↗
2.
Что такое REST? Основные принципы.
↗
3.
Чем REST отличается от GraphQL?
↗
4.
Что такое HTTP методы?
↗
5.
Как работают HTTP статус коды?
↗
6.
Что такое cookies, session, JWT?
↗
7.
Что такое WebSockets? Когда использовать?
↗
8.
Что такое idempotency в API?
↗
9.
Как версионировать API?
↗
10.
Что такое URI, URL и URN?
↗
11.
Что такое веб-хук?
↗
12.
Что такое JWT и для чего он используется?
↗
13.
В чем разница между аутентификацией и авторизацией?
↗
14.
Что такое Rate Limiting?
↗
15.
Что такое Content Negotiation?
↗
16.
Чем отличается синхронное API от асинхронного?
↗
17.
Что такое timeout запроса и почему они важны?
↗
18.
Что такое retry-механизм и когда его применяют?
↗
19.
Что такое stateless-подход и почему он важен для REST API?
↗
20.
Чем отличается HTTP от HTTPS на уровне работы протокола?
↗
Асинхронность
20 уроков
1.
Что такое асинхронность?
↗
2.
Различия между асинхронностью и многопоточностью?
↗
3.
Что такое синхронность?
↗
4.
Как создать асинхронный генератор?
↗
5.
Что делают ключевые слова async и await?
↗
6.
Что такое event loop в asyncio?
↗
7.
Что такое IO bound операции?
↗
8.
Что такое корутина и как ее создать?
↗
9.
Что такое asyncio.run() и когда его использовать?
↗
10.
Что такое конкурентность в asyncio?
↗
11.
Как создать и управлять задачами (Tasks) в asyncio?
↗
12.
Когда стоит использовать асинхронность, а когда многопоточность
↗
13.
Что такое asyncio.sleep() и чем он отличается от time.sleep()?
↗
14.
Как создать асинхронный контекстный менеджер?
↗
15.
Что такое event-driven архитектура?
↗
16.
Как работает Celery?
↗
17.
Чем отличается asyncio.gather() от asyncio.wait()?
↗
18.
Что такое async iterator и где его применяют в Python?
↗
19.
Почему нельзя вызывать блокирующие функции внутри async-корутины
↗
20.
Как обработать исключение, которое произошло внутри корутины?
↗
Кеширование
10 уроков
1.
Что такое кеширование и зачем оно нужно?
↗
2.
Что такое "write-behind" кеширование?
↗
3.
Что такое TTL и зачем он нужен?
↗
4.
Какие стратегии инвалидации кеша вы знаете?
↗
5.
Как работает Redis как система кеширования?
↗
6.
Какие данные подходят для кеширования лучше всего?
↗
7.
Что такое cache hit и cache miss?
↗
8.
Почему нельзя хранить все данные только в кеше?
↗
9.
Чем кеширование ускоряет работу приложения?
↗
10.
Где можно использовать кеширование в backend-приложении?
↗
Тестирование
15 уроков
1.
Что такое тестирование и зачем оно нужно в разработке?
↗
2.
Чем отличается ручное тестирование от автоматизированного?
↗
3.
Какие виды тестирования ты знаешь?
↗
4.
Что такое unit-тесты и для чего они используются?
↗
5.
Чем unit-тесты отличаются от интеграционных тестов?
↗
6.
Что такое тест-кейс и из каких частей он состоит?
↗
7.
Что такое end-to-end (E2E) тестирование?
↗
8.
Что такое bug / defect и какой у него жизненный цикл?
↗
9.
Что такое regression testing и когда его проводят?
↗
10.
Чем отличается black-box тестирование от white-box?
↗
11.
Что такое pytest и для чего он используется?
↗
12.
Как запустить тесты в pytest?
↗
13.
Почему тесты важны при командной разработке?
↗
14.
Как тестировать работу с базой данных в backend-проекте?
↗
15.
Что такое negative testing и чем он полезен?
↗
Последний
1 урок
1.
Самый популярный вопрос
↗
Заключение
1 урок
1.
Заключение
↗
3. Python: 151 практическая задача с собеседований 5.00
Введение
3 урока
1.
Вступление
↗
2.
Советы по прохождению
↗
3.
Зачем нужен этот курс?
↗
Структуры данных
7 уроков
1.
Строки
↗
2.
Строки Часть 2
↗
3.
Списки
↗
4.
Списки Часть 2
↗
5.
Словари
↗
6.
Словари Часть 2
↗
7.
Множества
↗
ООП, декораторы, рекурсия
4 урока
1.
Рекурсия
↗
2.
Рекурсия Часть 2
↗
3.
Декораторы
↗
4.
ООП
↗
Последняя...
1 урок
1.
101-я задача
↗
Python в деталях
2 урока
1.
Генераторы и итераторы
↗
2.
Алгоритмы
↗
Конец
1 урок
1.
Заключение
↗