__del__ etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
__del__ etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

14 Ağustos 2008 Perşembe

Pyton ve Nesnel Programlama

Nesnel programlama sizin programınızı gerçek dünyadaki sistemler gibi modelleyebilmenizi sağlayan bir güzelliktir , kim icat ettiyse elleri öpülesi mukaddes bir insandır.

  • Nesnel yaklaşımda bir sınıf yaratılır, sınıf bir genellemedir. Belli bir grup nesnenin ortak özelliklerini barındırır(örn: organism sınıfı bütün organizmalarda bulunan işlem ve özellikleri barındırır.)

  • Nesne bu sınıf'ın bir nesneye uygulanmasıdır animal = organism() yada human = organism() dediğimiz zaman buradaki animal ve human birer nesnedir.

  • Sınıf özellikleri bu sınıfa ait özelliklerdir. Örneğin her organizmanın bir yaşı vardır. Bu yaş bigisini organism sınıfı üzerinde age olarak tanımlarsak [1] daha sonra bu sınıfa ait nesnelerin age özelliğini animal.age şeklinde çağırabiliriz.

  • Bir sınıf kendi özelliklerini kendi kendine de değiştirebilir. Bu durumda self.ozellik = hede şeklinde kullanılır. Buradaki aslında self sınıfın kendisini ifade eder. Eğer bir fonksiyon içerisinde self. kullanılacaksa o fonksiyonun argümanı içerisinde self bulumalıdır.[2]

  • Bir nesne oluşturuluyorken __init__ fonksiyonu otomatik olarak çağırılır.

  • Bir nesne siliniyorken __del__ fonksiyonu otomatik olarak çağırılır. Eğer del(nesne) kullanılarak nesne silinmez ise nesne program sonunda silinir.


  • __init__ ve __del__ fonksiyonları self argümanı ile belirtilmek zorundadır.

  • örnek olarak bir organizma sınıfı şu şekilde tanımlanabilir.
    class organism:
    def __init__(self):
    print "ben doğdum"
    self.age = 0 [1]
    def grow_up(self,years):
    self.age += years
    def __del__(self):
    print "ben öldüm"
    animal = organism()
    print "animal age is :",animal.age
    animal.grow_up(3) # grow up 3 years
    print "animal age is :", animal.age