Python : Nesne Tabanlı Programlama

Sena
2 min readDec 12, 2022

--

Merhaba, ben Sena. SistersLab’in Toplum Gönüllüleri Vakfı (https://www.tog.org.tr/en/) tarafından desteklenen Women in Tech Academy proje katılımcılarından biriyim. Proje, 20–28 yaş aralığında beyanı kadın olan bireyleri 3 ay boyunca yazılım eğitimi ve destekleyici eğitimlerle güçlendirerek sektörde iş gücüne katılımını artırmayı hedefliyor. Projeyle ilgili detaylı bilgiye bu bağlantıdan ulaşabilirsiniz: https://sisterslab.co/women-in-tech-academy/

Bu yazımda sizlere Python programlama dilinde Nesne Tabanlı Programlamayı(Object Oriented Programming) açıklayacağım. Gerçek hayattaki bir işlemi yapmak için genelde Nesne tabanlı proglamlamayı kullanırız.

Nesne tabanlı programlama kapsamındaki kullandığımız terimler

  • class (sınıf)
  • object (nesne)
  • attributes (özellik)
  • metod

kavramlarıdır.

Bir class tanımlamasını aşagıdaki şekilde yaparız.

  • class sinif_adi(): body
  • class sinif_adi: body

Default değerler ile class oluşturma :

init() fonksiyonu

Class’tan bir metod üreteceksek __init__’i kullanırız. Bir sınıfta aynı işlemleri fazlaca yazmaktan kurtarır. İlk ögesi self’tir.

  • Encapsulation(Kapsülleme)
  • Inheritance(Miras)
  • Polymorphism
  • Abstract Class
  • Overriding

Encapsulation(Kapsülleme)

Kapsülleme, class içindeki bilgileri diğer sınıflar içinden yetkisiz erişimden korunması işlemidir. Bir classtaki özellikleri private olarak belirleyerek istemediğiniz kişilerden koruyabilirsiniz. Private olması için iki alt çizi yaparız.

Inheritance(Miras)

Inheritance (kalıtım), bir nesnenin özelliklerinin farklı nesneler tarafından da kullanılabilmesine olanak sağlar. Class bir başka sınıf tarafından miras alınabilir. Bu işlem yapıldığı zaman temel alınan sınıfın tüm özellikleri yeni class’a aktarılır.

Abstract Class(Soyut Sınıflar)

Python bizlere abstract classları sunmaz ama ABC modülü sayesinde (Abstract Base Classes) abstract classlar tanımlayabiliriz.

Overriding(Üzerine Yazma)

Polymorphism (Çok Biçimlilik)

Polimorfizm, alt sınıfların ata sınıflardaki metotları geçersiz kılması(method overriding) sayesinde çok biçimli olarak davranmasına denir. Bu sayede alt sınıf ata sınıfından gelen davranışı kendine göre şekillendirebilir.

Nesne Tabanlı Programlamayı(Object Oriented Programming) açıkladım. Python hakkında daha fazla bilgiye erişmek isterseniz geçmiş yazılarımı okuyabilirsiniz. Daha fazlası için github hesabımı takip edebilirsiniz.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Sena
Sena

No responses yet