THT DUYURU

chat
Python Artificial Intelligence’da en çok kullanılan dildir ve gerekli dökümanların paylaşım alanlar burada paylaşılmaktadır.

ugursuz reklam
takipci
Seçenekler

Python ile Nesne Tabanlı Programlamaya Giriş/THT Ar-Ge Kulübü

Hacknology - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
10/2015
Nereden:
rm -rf /
Mesajlar:
2.702
Konular:
151
Teşekkür (Etti):
930
Teşekkür (Aldı):
1246
Ticaret:
(0) %
4
1103
14-09-2017 10:57
#1
Python'da sınıf işlemleri

Önceki bir c++ sınıf yapılarını anlattığım yazımda sınıfların amacından bahsetmiştim. O yüzden amacından ve mantığından derinlemesine bahsetmeden kodlama işlemine geçmek istiyorum, zaten yazarken mantığı da oturacaktır.

Sınıf Oluşturmak:
Burada yapacağımız işlem aslınca çok basit, sadece tek bir satırla bir sınıf tanımlayacağız.
Kod:
Class SinifAdi:
veya
Kod:
Class SinifAdi():
Yalnız burada dikkat etmemiz gereken bir nokta var. Yanlış hatırlamıyorsam Python 2.2 den sonra gelen bir güncelleme ile sınıflar 2 ye ayrıldı. "new-style class" ve "old-style class". Farklarını google dan daha iyi araştırabilirsiniz lakin biz "new-style class" lara göz atacağız.
İkisini nasıl ayırt edeceğinize değinecek olursak;
Kod:
class SinifAdi(): #old-style
Kod:
class SinifAdi(object): #new-style
Ve bu sınıfın altına o sınıfla alakalı yapacağımız işlemleri gireceğiz. Basit bir sınıf fonksiyonu
Kod:
class Sinifim(object):
        def __init__(self):
                #TODO
        def fonk1(self):
                #TODO
        def fonk2(self):
                #TODO
biçiminde olabilir. Eğer self in ne olduğunu merak ediyorsanız stackof sizin için açıklama getirmiş.
https://stackoverflow.com/questions/...-to-a-beginner
Şimdi örnek bir nesne tabanlı uygulama yazalım.
Kod:
#THT ARGE KULUP
class Sinifim(object):
        def __init__(self, o1, o2):
                #Tanımlamalarımızı yapıyoruz.
                self.ogrenci1 = o1
                self.ogrenci2 = o2
                self.liste = []
        def fonk1(self):
                #ögrencileri ekliyoruz
                self.liste.append(self.ogrenci1)
                self.liste.append(self.ogrenci2)
                return self.liste
        def fonk2(self):
                #İsimleri yazdiriyoruz
                for isim in self.fonk1():
                        print isim
sinifim = Sinifim("Hackno", "Utku")#Argümanlarla sınıfımızı çağırıyoruz
sinifim.fonk2()
Peki bunun bize avantajları ne? Zira aynı kodu aynen bu şekilde de yazabilirdik.
Kod:
def print_me(x, y):
        print x + "\n" + y
print_me("Hackno", "Utku")
İkisinin de bize verdiği çıktı şu şekilde olacaktır;
Kod:
Hackno
Utku
>>>
Lakin çok büyük kapsamlı projelerde, özellikle toplu çalışılan projelerde herkes sizin kendi tarzınızda yazdığınız kodu okuyamayabilir. Nesne yönelimli(OOP) yazmak okunulabilirliği arttırır, daha sonradan kolayca geliştirmenize olanak verir(hey, sadece bir fonksyion daha yazın!), yazarken algoritma mantığınızı geliştirir. Bir sonraki yazımızda görüşmek üzere
---------------------
I surrender my soul
Odin hear my call

flag{Bur4si_b1r_0yun_park1}

hacknology@hacknologyroot:~/
Noises, k3~ Teşekkür etti.
Noises - ait Kullanıcı Resmi (Avatar)
Yeni Üye
Üyelik tarihi:
08/2017
Nereden:
Balıkesir
Yaş:
22
Mesajlar:
165
Konular:
19
Teşekkür (Etti):
26
Teşekkür (Aldı):
23
Ticaret:
(0) %
14-09-2017 11:10
#2
elinize sağlık hocam.

python ile gui dersi de verir misiniz?

visual studio daki gibi butonları, textboxları sürükle-bırak işlemi yapan bir ide ile
Hacknology - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
10/2015
Nereden:
rm -rf /
Mesajlar:
2.702
Konular:
151
Teşekkür (Etti):
930
Teşekkür (Aldı):
1246
Ticaret:
(0) %
14-09-2017 14:22
#3
Alıntı:
Noises´isimli üyeden Alıntı Mesajı göster
elinize sağlık hocam.

python ile gui dersi de verir misiniz?

visual studio daki gibi butonları, textboxları sürükle-bırak işlemi yapan bir ide ile

Olabilir, bakarız
---------------------
I surrender my soul
Odin hear my call

flag{Bur4si_b1r_0yun_park1}

hacknology@hacknologyroot:~/
BufGix - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
08/2015
Nereden:
Phobos/Space
Mesajlar:
1.090
Konular:
74
Teşekkür (Etti):
313
Teşekkür (Aldı):
468
Ticaret:
(0) %
15-09-2017 21:28
#4
Bu __init__ fonksyonuna Java daki yapicilar diyebilir miyiz? Yani yaptiklari is ayni mi?
---------------------
~Cahile gelmez benden hayır
CRYUS - ait Kullanıcı Resmi (Avatar)
Yeni Üye
Üyelik tarihi:
09/2017
Mesajlar:
21
Konular:
3
Teşekkür (Etti):
9
Teşekkür (Aldı):
1
Ticaret:
(0) %
30-09-2017 13:52
#5
Sağol ben kitap okuyarak öğreniyorum tavsiye ederim
--------------------- Şu bir toplum gerçeğidir ki, en üstün kabiliyet ahlaktır.

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler