Dekoratory i metaprogramowanie

 0    4 fiche    szczepaniaklucja7
Télécharger mP3 Imprimer jouer consultez
 
question réponse
Jak rozwiązać FizzBuzz za pomocą dekoratorów?
commencer à apprendre
Można stworzyć dekorator @override(value, condition), który sprawdza warunek (np. podzielność przez 3 lub 5) i zwraca odpowiedni napis zamiast liczby, nakładając go wielokrotnie na bazową funkcję
Jaka jest różnica między @classmethod i @staticmethod?
commencer à apprendre
@classmethod: przyjmuje klasę (cls) jako pierwszy argument i ma dostęp do danych wspólnych dla wszystkich obiektów tej klas ◦ @staticmethod: nie przyjmuje ani self, ani cls; jest to zwykła funkcja umieszczona w klasie dla zachowania porządku
Jaka jest różnica między dekoratorem i mixinem?
commencer à apprendre
Mixin: rozszerza klasę o nowe metody poprzez dziedziczenie. ◦ Dekorator: modyfikuje zachowanie konkretnej funkcji lub metody bez zmiany struktury klas
Do czego służy dekorator wraps?
commencer à apprendre
Służy do zachowania metadanych (takich jak nazwa funkcji __name__) oryginalnej funkcji po jej udekorowaniu, co ułatwia debugowanie

Vous devez vous connecter pour poster un commentaire.