In PythonBenötigen Decorators in Python das Decorator Pattern?
es richtig ist, dass in Python Dekorateure die Schnittstelle von die dekorierte Funktion/Klasse ändern kann, zum Beispiel Ändern Sie die Signatur der eingerichteten Funktionen und Methoden der dekorierten Klasse? Zum Beispiel:
>>> def MyDecorator(func): ... def NewFunc(): ... pass ... return NewFunc ... >>> @MyDecorator ... def MyFunc(a, b, c): ... print(a,b,c) ...
So Dekorateure in Python sind nicht notwendigerweise für die Umsetzung der Dekorateur-Entwurfsmuster verwendet, wie in dem Buch „Design Muster“ von GoF beschrieben?
Ist es eine schlechte Übung, einen Decorator zu schreiben, der die Schnittstelle der dekorierten Funktion/Klasse ändert?
Danke.
Ich denke, die Frage ist gut - aber zu weit gefasst. Ich meine, du hast 3 Fragen (auch wenn sie lose miteinander verbunden sind) statt nur einer. Könnten Sie versuchen, den Umfang der Frage einzuschränken? – MSeifert
@MSeifert Danke. Die Fragen, die mir gestellt werden, sind eng miteinander verwandt und sie sind tatsächlich die gleiche Frage, die in verschiedenen Formen ausgedrückt wird. Wenn ich sie in drei Posts teile, werden sie, glaube ich, Duplikate sein. – Tim