Mixins

Reusable functionality through inheritance

Interview Relevant: Design patterns

Mixins

Add functionality via multiple inheritance.

Code Examples

Mixins for reusable functionality.

python
1class JsonMixin:
2    def to_json(self):
3        import json
4        return json.dumps(self.__dict__)
5
6class LogMixin:
7    def log(self, message):
8        print(f"[{self.__class__.__name__}] {message}")
9
10# Use mixins
11class User(JsonMixin, LogMixin):
12    def __init__(self, name, email):
13        self.name = name
14        self.email = email
15
16user = User("Alice", "alice@example.com")
17print(user.to_json())    # From JsonMixin
18user.log("Created")      # From LogMixin
19
20# Mixin naming convention
21class SerializableMixin: pass
22class ComparableMixin: pass

AI Tutor

Ask about the topic

Sign in Required

Please sign in to use the AI tutor

Sign In