← До списку лабораторних по Python
Повний опис / сценарій лабораторної:
Meta: навчитися описувати прості моделі через dataclass з мінімумом коду.
Krok 1. Створити файл src/app/data24.py.
Komandi: cd ~/python_lab1/src; touch app/data24.py
Krok 2. Додати простий dataclass User.
Komanda: printf "from dataclasses import dataclass
@dataclass
class User:
id: int
name: str
is_active: bool = True
if __name__ == "__main__":
u = User(id=1, name="Taras")
print(u)
" > app/data24.py
Krok 3. Запустити модуль і подивитися вивід.
Komanda: export PYTHONPATH=$(pwd); python app/data24.py
Krok 4. Додати метод у клас User який повертає рядок з повним імʼям.
Poyasnennya: dataclass не забороняє прописувати методи.
Krok 5. Додати поле balances як словник з типами у анотаціях.
Poyasnennya: зварни увагу на необхідність default_factory для змінних типів.
Krok 6. Продемонструвати автоматичні методи eq і repr на прикладах порівняння обʼєктів.
Krok 7. Додати параметр frozen True щоб зробити обʼєкти незмінними.
Poyasnennya: спробуй змінити поле і подивися на помилку.
Krok 8. Занотувати різницю між dataclass і pydantic моделями з попередньої лабораторної.
Krok 9. Продумати як використовувати dataclass для налаштувань і конфігів.
Krok 10. Mini zvit.
Zavdannya: опиши коли звичайний клас все ще потрібен навіть якщо є dataclass.