Szukam praktycznych i niesyntetycznych przypadków użycia dekoratorów klasy Python. Jak dotąd jedynym przypadkiem, który miał dla mnie sens, było zarejestrowanie klasy w systemie wydawcy-subskrybenta, np. Wtyczek lub wydarzeń, coś w rodzaju:
@register
class MyPlugin(Plugin):
pass
lub
@recieves_notifications
class Console:
def print(self, text):
...
Wszelkie inne rozsądne przypadki, o których myślałem, mogłyby zostać zbudowane na podstawie dziedziczenia, metaklas lub metod dekoracyjnych. Czy możesz podać jakieś dobre (lub złe!) Przykłady korzystania z dekoratorów klas?
Dziękuję Ci!
ABCMeta
, a nie @abstractclass
dekorator klas.