🐍 Python  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Сложный  · 

Надёжный Python-проект

Итоговые ситуации охватывают архитектуру, журналирование, настройку, безопасность и выпуск. В каждом вопросе нужно сравнить последствия нескольких инженерных решений: направление зависимостей, наблюдаемость, защита входных данных и безопасное развёртывание. Все задания рассчитаны на CPython 3.12; отличия других реализаций или версий учитываются только там, где это прямо оговорено.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Версия: CPython 3.12. Выберите один ответ из четырёх. На 20 вопросов отведено не меньше 40 минут; оценивайте не название приёма, а его последствия для отказоустойчивости, безопасности и сопровождения. После завершения вы увидите общий процент, четыре тематические шкалы и объяснение каждого ответа.
Вопрос 1 из 20
Какой вариант лучше сохраняет направление зависимостей?
Вопрос 2 из 20
Зачем передавать идентификатор корреляции в журнал?
Вопрос 3 из 20
Обязательный секрет имеет запасное значение прямо в исходном коде. Какое исправление уберёт секрет из программы и не скроет отсутствие настройки?
Вопрос 4 из 20
Почему изменение схемы должно быть совместимо хотя бы с соседними версиями приложения?
Вопрос 5 из 20
Что настораживает в предметном модуле?
Вопрос 6 из 20
Как выбрать метрику ошибки, полезную для эксплуатации?
Вопрос 7 из 20
Сервис распаковывает загруженный ZIP в каталог `/srv/imports`. Какой риск возникает, если использовать имена файлов из архива без проверки?
Вопрос 8 из 20
После выпуска одновременно запускаются десять реплик приложения. Где безопаснее выполнять миграцию схемы, чтобы реплики не начали менять базу конкурентно?
Вопрос 9 из 20
Почему загрузка удалённой конфигурации прямо во время импорта ухудшает тестируемость?
Вопрос 10 из 20
Почему метка метрики с `user_id` и конкретным путём создаёт проблему высокой кардинальности?
Вопрос 11 из 20
Что повышает воспроизводимость установки зависимостей?
Вопрос 12 из 20
Почему откат приложения может не сработать после необратимой миграции?
Вопрос 13 из 20
Что даёт ядру проекта интерфейс границы транзакции без привязки к конкретной ORM?
Вопрос 14 из 20
Как сохранить request_id отдельно для каждой асинхронной задачи?
Вопрос 15 из 20
Временный файл содержит чувствительные данные. Если обработка поднимет обычное исключение и стек будет штатно раскручен, какое решение выполнит очистку при выходе из блока?
Вопрос 16 из 20
Как выпускать рискованное изменение поведения?
Вопрос 17 из 20
Зачем использовать структуру `src/` в пакете?
Вопрос 18 из 20
Почему `logger.exception` ставят внутри except?
Вопрос 19 из 20
Почему нельзя загружать pickle от недоверенного пользователя?
Вопрос 20 из 20
Как выглядит управляемый постепенный выпуск?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу