Python - Decorator Fonksiyonlar

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ก.ย. 2024
  • Decoratorler aslında birer wrapperdır. Fonksiyonun davranışı değiştirmeye yararlar. Fonksiyon çalışmadan önce yapılması gereken bir şey varsa veya fonksiyonları dinamik olarak bir yerlere kayıt etmek istiyorsanız decoratorler bu iş için biçilmiş kaftandır.
    Python Decorator’leri ne değildir?
    Python decoratorlerin görevi, sınıfı veya fonksiyonu sarmak, işlevlerini değiştirmektir. The GoF (Gang of Four) tasarım kalıplarından, decorator design pattern ile bir bağı yoktur. Decorator design pattern’da amaç bir nesnenin davranışını değiştirmek için onu “decorate” eder. Ve bu işlemi, decorator sınıfları oluşturarak, undecorated base class’lara uygular.
    Decorator design pattern için.
    Decorator Design Pattern ve Python Decorators
    Her ikisi de aynı işlevleri eklemek için birden fazla kez sınıfa/fonksiyona uygulanabilir. Ancak decorator tasarım kalıbı decorate edeceğiniz sınıflar ile tasarlanmasını gerektirir.
    Python decoratorleri, işlevlerini herhangi bir sınıfın herhangi bir fonksiyonu üzerinde yaparlar.
    Python Decorator Örnekleri
    Python’da decorator fonksiyonları yazabilmemiz için gerekli bir konsept vardır. First-class everything konsepti.
    First-class everything konseptinde, nesneler değişkene atanabilir, başka nesneler içinde saklanabilir, parametre olabilir ve geri dönüş değeri olabilirler. Decoratorlerin yaptığı şey, decorator fonksiyonuna parametre olarak bir fonksiyon alınır. Bu fonksiyon, başka bir fonksiyon içinde çağırılır ancak, ekstra işlevler ile birlikte. Daha sonra decorate edilmiş fonksiyon geri döndürülür.
    Decoratorler için @ sembolü!

ความคิดเห็น • 1