*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle
Python'da Nesneye Yönelik Programlama
Öncelikle nesneye yönelik programlamanın ne olduğunu açıklamak gerekirse, nesneye yönelik programlama, programlama dillerinde yaygın olarak kullanılan bir paradigmadır. Bu yaklaşım, programlamayı gerçek hayattaki nesnelerin özellikleri ve davranışları etrafında düzenlemeyi amaçlar.
Python, nesneye yönelik programlama konusunda oldukça başarılı bir dil olarak bilinir. Bunun nedeni, Python'un dil yapısının, nesneye yönelik programlama prensiplerine uygun olmasıdır.
Python'da nesneye yönelik programlama için temel kavramlar şunlardır:
- Miras (Inheritance)
- Çok Biçimlilik (Polymorphism)
- Kapsülleme (Encapsulation)
- Sınıflar ve Nesneler (Classes and Objects)
Sınıflar ve Nesneler
Sınıflar, Python'da nesneye yönelik programlamada temel bir kavramdır. Sınıflar, belirli bir veri türünde nesneleri tanımlar. Bu nesneler, söz konusu sınıftaki özellikleri ve davranışları paylaşır.
Örneğin, bir Araba sınıfı tanımlanabilir. Araba sınıfının nesneleri, özellik olarak Marka, Model, Hız ve Renk gibi özellikleri içerebilir. Araba sınıfının davranışları ise sürmek, fren yapmak veya hızlandırmak olabilir.
class Araba:
def __init__(self, marka, model, hiz, renk):
self.marka = marka
self.model = model
self.hiz = hiz
self.renk = renk
def sur(self):
print(f\"{self.marka} {self.model} arabası sürülmeye başlandı.\")
def fren_yap(self):
print(f\"{self.marka} {self.model} arabası durduruldu.\")
def hizlandir(self, artis_miktari):
self.hiz += artis_miktari
print(f\"{self.marka} {self.model} arabası {self.hiz} km/s hıza çıktı.\")
Nesneler, sınıfları temsil eden örneklerdir. Örneğin, bir Araba sınıfı için bir Çiftlik Sürüşü adlı nesne oluşturulabilir.
araba = Araba(\"Fiat\", \"Egea\", 0, \"Kırmızı\")
İlk başta, hızı sıfıra eşitlenmiş bir Araba nesnesi yaratıldı. Şimdi, bu nesnenin sürülmesi, hızlandırılması ve fren yapılması işlemleri gerçekleştirilebilir.
araba.sur()
araba.hizlandir(20)
araba.fren_yap()
Bu kod parçasında, araba.sur () işlevi ve diğer işlevler, Araba sınıfının davranışlarına uygulanır. Bu işlevler tarafından kullanılan değişkenler (örn. marka, model, hız ve renk), Araba sınıfının özelliklerini temsil eder.
Kapsülleme
Kapsülleme, bir sınıfın içindeki değişkenlerin veya fonksiyonların dışarıdan erişiminin engellenmesidir. Bunun amacı, bir değişkene sınıfın dışından müdahale edilmesini önlemek ve programın güvenliğini artırmaktır.
Python'da, bir değişkeni gizlemek için tek bir alt çizgi ( _ ) ile başlatmak yeterlidir. Bu, değişkenin sadece sınıfın içinde erişilebilir olacağı anlamına gelir.
class Kapi:
def __init__(self, acik_mi):
self._acik_mi = acik_mi # Sadece bu sınıfın içinde erişebileceğimiz bir değişken.
def ac_kapi(self):
self._acik_mi = True # Kapıyı açar.
def kapat_kapi(self):
self._acik_mi = False # Kapıyı kapatır.
Miras
Miras, bir sınıfın, özelliklerini ve davranışlarını diğer sınıflara aktarmasıdır. Miras, Python'da nesneye yönelik programlama için çok yaygın olarak kullanılır. Miras yoluyla, kod tekrarını azaltmak ve programın yönetilebilirliğini artırmak mümkündür.
class Sekil:
def __init__(self, boyut):
self.boyut = boyut
def alan(self):
pass
def cevre(self):
pass
class Kare(Sekil):
def __init__(self, boyut):
super().__init__(boyut)
def alan(self):
return self.boyut**2
def cevre(self):
return self.boyut * 4
class Dikdortgen(Sekil):
def __init__(self, boyut1, boyut2):
self.boyut1 = boyut1
self.boyut2 = boyut2
def alan(self):
return self.boyut1 * self.boyut2
def cevre(self):
return 2 * (self.boyut1 + self.boyut2)
Bu kod parçasında, Sekil adlı üst sınıf, Kare ve Dikdörtgen adlı alt sınıflar tarafından miras alınır. Kare sınıfı, Sekil sınıfındaki alan ve çevre yöntemlerini uygular ve kare için özgün bir alan ve çevre yöntemi içerir. Aynı şekilde, Dikdörtgen sınıfı da benzer bir işlevsellik sağlar.
Çok Biçimlilik
Polimorfizm, nesne yönelimli programlama dillerinde çok önemli bir kavramdır. Çok biçimlilik, bir nesnenin, birden fazla sınıfın üyesi gibi davranabilmesidir. Python'da çok biçimlilik, örneğin fonksiyonların aynı parametrenin farklı değerlerini alabilmesi yoluyla gerçekleştirilebilir.
def alan_hesapla(sekil):
return sekil.alan()
kare = Kare(5)
dikdortgen = Dikdortgen(4,6)
print(alan_hesapla(kare))
print(alan_hesapla(dikdortgen))
Bu kod, kare ve dikdörtgen nesnelerini Sekil sınıfının alt sınıfları olarak kullanır. ancak alan_hesapla () işlevi bu iki nesneyi ayrı ayrı ele alır ve her birinin alanını hesaplar.
Sık Sorulan Sorular
1. Python'da nesneye yönelik programlama için temel kavramlar nelerdir?
Python'da temel kavramlar sınıflar, nesneler, kapsülleme, miras ve çok yönlülüktür.
2. Python'da miras nasıl kullanılır?
Bir sınıfın özelliklerini ve davranışlarını başka bir sınıfa aktarmak için miras kullanılır. Miras için, üst sınıfın alt sınıftan önce tanımlanması gerekir.
3. Python'da kapsülleme ne anlama gelir?
Kapsülleme, bir sınıfın içindeki değişkenlerin veya fonksiyonların, dışarıdan erişilmesini önlemek için izolasyonu sağlar. Bunun amacı, programın güvenliğini arttırmaktır.
4. Python'da çok yönlülük nedir?
Polimorfizm, bir nesnenin, birden fazla sınıfın üyesi gibi davranabilmesidir. Bu, Python'da farklı tip verileri kullanırken, aynı adı veren işlevleri kullanabilmenizi sağlar.
5. Nesneye yönelik programlama, başka hangi programlama dillerinde kullanılır?
Nesneye yönelik programlama, neredeyse tüm programlama dilleri tarafından desteklenir. Bunlar arasında JavaScript, C ++ ve Java bulunur."
Python'da Nesneye Yönelik Programlama
Öncelikle nesneye yönelik programlamanın ne olduğunu açıklamak gerekirse, nesneye yönelik programlama, programlama dillerinde yaygın olarak kullanılan bir paradigmadır. Bu yaklaşım, programlamayı gerçek hayattaki nesnelerin özellikleri ve davranışları etrafında düzenlemeyi amaçlar.
Python, nesneye yönelik programlama konusunda oldukça başarılı bir dil olarak bilinir. Bunun nedeni, Python'un dil yapısının, nesneye yönelik programlama prensiplerine uygun olmasıdır.
Python'da nesneye yönelik programlama için temel kavramlar şunlardır:
- Miras (Inheritance)
- Çok Biçimlilik (Polymorphism)
- Kapsülleme (Encapsulation)
- Sınıflar ve Nesneler (Classes and Objects)
Sınıflar ve Nesneler
Sınıflar, Python'da nesneye yönelik programlamada temel bir kavramdır. Sınıflar, belirli bir veri türünde nesneleri tanımlar. Bu nesneler, söz konusu sınıftaki özellikleri ve davranışları paylaşır.
Örneğin, bir Araba sınıfı tanımlanabilir. Araba sınıfının nesneleri, özellik olarak Marka, Model, Hız ve Renk gibi özellikleri içerebilir. Araba sınıfının davranışları ise sürmek, fren yapmak veya hızlandırmak olabilir.
class Araba:
def __init__(self, marka, model, hiz, renk):
self.marka = marka
self.model = model
self.hiz = hiz
self.renk = renk
def sur(self):
print(f\"{self.marka} {self.model} arabası sürülmeye başlandı.\")
def fren_yap(self):
print(f\"{self.marka} {self.model} arabası durduruldu.\")
def hizlandir(self, artis_miktari):
self.hiz += artis_miktari
print(f\"{self.marka} {self.model} arabası {self.hiz} km/s hıza çıktı.\")
Nesneler, sınıfları temsil eden örneklerdir. Örneğin, bir Araba sınıfı için bir Çiftlik Sürüşü adlı nesne oluşturulabilir.
araba = Araba(\"Fiat\", \"Egea\", 0, \"Kırmızı\")
İlk başta, hızı sıfıra eşitlenmiş bir Araba nesnesi yaratıldı. Şimdi, bu nesnenin sürülmesi, hızlandırılması ve fren yapılması işlemleri gerçekleştirilebilir.
araba.sur()
araba.hizlandir(20)
araba.fren_yap()
Bu kod parçasında, araba.sur () işlevi ve diğer işlevler, Araba sınıfının davranışlarına uygulanır. Bu işlevler tarafından kullanılan değişkenler (örn. marka, model, hız ve renk), Araba sınıfının özelliklerini temsil eder.
Kapsülleme
Kapsülleme, bir sınıfın içindeki değişkenlerin veya fonksiyonların dışarıdan erişiminin engellenmesidir. Bunun amacı, bir değişkene sınıfın dışından müdahale edilmesini önlemek ve programın güvenliğini artırmaktır.
Python'da, bir değişkeni gizlemek için tek bir alt çizgi ( _ ) ile başlatmak yeterlidir. Bu, değişkenin sadece sınıfın içinde erişilebilir olacağı anlamına gelir.
class Kapi:
def __init__(self, acik_mi):
self._acik_mi = acik_mi # Sadece bu sınıfın içinde erişebileceğimiz bir değişken.
def ac_kapi(self):
self._acik_mi = True # Kapıyı açar.
def kapat_kapi(self):
self._acik_mi = False # Kapıyı kapatır.
Miras
Miras, bir sınıfın, özelliklerini ve davranışlarını diğer sınıflara aktarmasıdır. Miras, Python'da nesneye yönelik programlama için çok yaygın olarak kullanılır. Miras yoluyla, kod tekrarını azaltmak ve programın yönetilebilirliğini artırmak mümkündür.
class Sekil:
def __init__(self, boyut):
self.boyut = boyut
def alan(self):
pass
def cevre(self):
pass
class Kare(Sekil):
def __init__(self, boyut):
super().__init__(boyut)
def alan(self):
return self.boyut**2
def cevre(self):
return self.boyut * 4
class Dikdortgen(Sekil):
def __init__(self, boyut1, boyut2):
self.boyut1 = boyut1
self.boyut2 = boyut2
def alan(self):
return self.boyut1 * self.boyut2
def cevre(self):
return 2 * (self.boyut1 + self.boyut2)
Bu kod parçasında, Sekil adlı üst sınıf, Kare ve Dikdörtgen adlı alt sınıflar tarafından miras alınır. Kare sınıfı, Sekil sınıfındaki alan ve çevre yöntemlerini uygular ve kare için özgün bir alan ve çevre yöntemi içerir. Aynı şekilde, Dikdörtgen sınıfı da benzer bir işlevsellik sağlar.
Çok Biçimlilik
Polimorfizm, nesne yönelimli programlama dillerinde çok önemli bir kavramdır. Çok biçimlilik, bir nesnenin, birden fazla sınıfın üyesi gibi davranabilmesidir. Python'da çok biçimlilik, örneğin fonksiyonların aynı parametrenin farklı değerlerini alabilmesi yoluyla gerçekleştirilebilir.
def alan_hesapla(sekil):
return sekil.alan()
kare = Kare(5)
dikdortgen = Dikdortgen(4,6)
print(alan_hesapla(kare))
print(alan_hesapla(dikdortgen))
Bu kod, kare ve dikdörtgen nesnelerini Sekil sınıfının alt sınıfları olarak kullanır. ancak alan_hesapla () işlevi bu iki nesneyi ayrı ayrı ele alır ve her birinin alanını hesaplar.
Sık Sorulan Sorular
1. Python'da nesneye yönelik programlama için temel kavramlar nelerdir?
Python'da temel kavramlar sınıflar, nesneler, kapsülleme, miras ve çok yönlülüktür.
2. Python'da miras nasıl kullanılır?
Bir sınıfın özelliklerini ve davranışlarını başka bir sınıfa aktarmak için miras kullanılır. Miras için, üst sınıfın alt sınıftan önce tanımlanması gerekir.
3. Python'da kapsülleme ne anlama gelir?
Kapsülleme, bir sınıfın içindeki değişkenlerin veya fonksiyonların, dışarıdan erişilmesini önlemek için izolasyonu sağlar. Bunun amacı, programın güvenliğini arttırmaktır.
4. Python'da çok yönlülük nedir?
Polimorfizm, bir nesnenin, birden fazla sınıfın üyesi gibi davranabilmesidir. Bu, Python'da farklı tip verileri kullanırken, aynı adı veren işlevleri kullanabilmenizi sağlar.
5. Nesneye yönelik programlama, başka hangi programlama dillerinde kullanılır?
Nesneye yönelik programlama, neredeyse tüm programlama dilleri tarafından desteklenir. Bunlar arasında JavaScript, C ++ ve Java bulunur."
*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle