Что такое Mixin в Python

Python Senior Без компании
Что такое Mixin в Python
Ответы
Mixin — это класс, предназначенный для добавления функциональности другим классам через множественное наследование, но не предназначенный для самостоятельного использования. Миксины не создают экземпляров и обычно содержат только методы, но не атрибуты. Пример: ``` class JsonMixin: def to_json(self): import json return json.dumps(self.__dict__) class DictMixin: def to_dict(self): return self.__dict__ class User(DictMixin, JsonMixin): def __init__(self, name, age): self.name = name self.age = age user = User("Alice", 30) print(user.to_dict()) # {'name': 'Alice', 'age': 30} print(user.to_json()) # '{"name": "Alice", "age": 30}' ``` Особенности: - Имеют суффикс `Mixin` по соглашению - Решают проблему дублирования кода - Позволяют комбинировать поведение без сложной иерархии - Не должны переопределять методы друг друга