ГоловнаКурсиТренажерТест рівняPersonalУвійти
Модуль 7 · Урок 35 із 60

Протоколи та dependency injection

Зменшувати зв’язність компонентів.

28 хв +100 XP Intermediate 4 контрольні питання
Поточний модуль 07 ООП у Python
Результат уроку

У цьому уроці ти не просто прочитаєш про «Протоколи та dependency injection», а побудуєш робочий приклад, розбереш кожний крок, виконаєш три вправи та закріпиш тему в тренажері.

Пояснення

Як працює тема на практиці

Протоколи та dependency injection — практична тема, без якої складно писати передбачувані програми на Python. Зменшувати зв’язність компонентів.

Починай із контракту: які дані надходять, який результат очікується і що вважається помилкою. Це одразу підказує структуру рішення та набір перевірок.

Після робочого сценарію обов’язково перевір порожнє значення, мінімальну й максимальну межу, неправильний тип або відсутній ресурс. Саме крайові випадки найчастіше відрізняють навчальний код від production-коду.

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

01

Пояснити власними словами, яку проблему розв’язує тема «Протоколи та dependency injection».

02

Розділити вхідні дані, бізнес-правила та формування результату.

03

Перевірити типовий, граничний і помилковий сценарії.

04

Оцінити читабельність: назви, вкладеність, дублювання та залежності.

Робочий приклад
Python · lesson 35
from dataclasses import dataclass

@dataclass(frozen=True)
class Course:
    title: str
    lessons: int

course = Course('Python Backend', 60)
print(course.title)
1

Визначаємо формат вхідних даних і очікуваний результат.

2

Розбираємо ключову конструкцію прикладу та причину її вибору.

3

Запускаємо типовий сценарій і перевіряємо фактичний результат.

4

Додаємо крайовий випадок, після чого спрощуємо код без зміни поведінки.

Закріплення

Три вправи від простого до challenge

01
Розігрів

Зміни приклад уроку так, щоб він працював з двома різними наборами даних і виводив зрозуміле повідомлення.

02
Основна практика

Створи невелику програму на тему «Протоколи та dependency injection»: використай реалістичні дані навчальної платформи, покажи результат і оброби щонайменше один крайовий випадок.

03
Challenge

Додай перевірку помилкових даних, винеси логіку в окрему функцію/метод і підготуй щонайменше три тестові сценарії для теми «Протоколи та dependency injection».

Виконати основну вправу в тренажері
Практична задача

Створи невелику програму на тему «Протоколи та dependency injection»: використай реалістичні дані навчальної платформи, покажи результат і оброби щонайменше один крайовий випадок.

Рішення виконує поставлену умову, використовує ключові конструкції теми «Протоколи та dependency injection», має зрозумілі назви та не падає на порожніх або некоректних даних.

Відкрити редактор
ПідказкиЗапиши приклад input → output до написання коду.Спочатку реалізуй найменший робочий варіант, потім додай перевірки.Не дублюй одну й ту саму умову в кількох місцях.
Контроль засвоєння

Перевір себе перед завершенням уроку

Дай відповідь на всі 4 питання. Для зарахування потрібно набрати щонайменше 75%.

0/4відповідей
01

Який підхід найкраще закріплює тему «Протоколи та dependency injection»?

02

Який результат найточніше відповідає меті цього уроку?

03

Яка дія найкраще закріпить матеріал після теорії та прикладу?

04

Який принцип потрібно перевірити у власному рішенні?

Заверши тест і забери 100 XPКнопка активується після результату від 75%.