SORU
7 Temmuz 2011, PERŞEMBE


Python @alıcıları ve ayarlayıcıları özelliği karşı

Burada Python özel tasarım saf bir soru:

class MyClass(object):
    ...
    def get_my_attr(self):
        ...

    def set_my_attr(self, value):
        ...

ve

class MyClass(object):
    ...        
    @property
    def my_attr(self):
        ...

    @my_attr.setter
    def my_attr(self, value):
        ...

Python bize her şekilde yapmasını sağlar. Eğer bir Python programı tasarım olsaydı, hangi yaklaşım ve neden kullanmak istiyorsunuz?

CEVAP
7 Temmuz 2011, PERŞEMBE


Özellikleri tercih ederim. İçin oradalar.

Bu nedenle tüm öznitelikleri Python ile ortak olmasıdır. Bir ile başlayan isimler ya da iki sadece verilen özniteliği kalır. bu uygulama bir uyarı kodu gelecekteki sürümlerinde aynı çizgi. Aslında bu öznitelik ayarlamadan engel değil. Bu nedenle, standart öznitelik erişim, iyi, özellikleri değiştirmek normal, Pythonic yoludur.

Özellikleri avantaj olarak, öznitelik erişmek için aynı olmalarıdır, istemci kodu için herhangi bir değişiklik olmadan diğerine değiştirebilirsiniz. Kullandığı kod değiştirmeden üretim için değil, özellikleri (- kod-sözleşme ya da hata ayıklama için) ve bir kullanan bir sınıf bir versiyonu var. Aynı zamanda, daha iyi erişim, daha sonra kontrol etmek gerekebilir diye her şey için alıcı ve ayarlayıcıları yazmak zorunda değilsin.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ben Schoon

    Ben Schoon

    23 Kasım 2012
  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • skiesofblack.net

    skiesofblack

    14 HAZİRAN 2009