OOP (Nesne Yönelimli Programlama)

Nesne Yönelimli Programlama (OOP) Nedir?

Herkese merhabalar, bu içeriğimde OOP yazı dizisinin 1. yazısını ele alıyor olacağım. Yazı dizisi başlıklarını, gidişatını takip etmek için şu bağlantıyı ziyaret edebilirsiniz. Bu yazımda nesne yönelimli programlama mantığına, OOP’nin ne olduğuna ve ne için kullanıldığına, faydalarına ve temel sınıf, nesne oluşturmaya değineceğim. O halde lafı uzatmadan yazımıza başlayalım! 😊

Nesne Yönelimli Programlama (OOP) Nedir?

Yazılım geliştirme adımları belirli metodolojiler ve süreçler etrafına dayandırılır. Günümüzde mimari olarak kabul edilen ve yazılım projelerinin olmazsa olmazı olarak nitelendirilen nesne yönelimli programlama da yine bu süreçlerden biridir. Nesne yönelimli programlama, OOP, programlama dilinden bağımsız olarak yazılım tasarımının mantık ve işlevler yerine nesne ve veriler etrafında düzenleyen bir model yapısıdır. Yazılım tasarım süreçlerinde nesne yönelimli programlama mantığı son derece önemlidir.

Yazılım programı yazarken doğru bilinen yanlışlardan biri de uzun uzun kodlar yazmak ve kod satır sayısını arttırmaktır. Ancak programların daha yüksek performanslı, hızlı, güvenilir ve ihtiyaçlara yanıt verecek şekilde çalışması için durumun böyle olmadığı çok açık ve nettir. OOP ile nesneler bir sınıf içerisinde oluşturularak tüm projelerde kullanılır. Bu sayede ise sınıflar bir kez oluşturulur, uzun yazılacak olan kodların da önüne geçilir. Dolayısıyla kodların tekrar tekrar yazılmasına da gerek kalmaz. OOP’nin yazılımcılar için sunduğu en iyi avantajlardan birinin bu olduğunu söylememiz yanlış olmaz.

Bu yazımızda aşağıdaki konulara değineceğiz:

  • Sınıf Nedir
  • Fonksiyon Tanımlama
  • Nesne Nedir
  • Sınıftan Nesne Üretme
  • Nesne Yönelimli Programlama Faydaları Nelerdir

Nesne Yönelimli Programlama – Sınıf (Class) Nedir?

Nesne yönelimli programlamada nesnelerin özelliklerini ve metotlarını toplayabilmek için sınıflara yani class’lara ihtiyaç duyulur. Sınıflar, nesnelerde oluşan geniş kapsama sahip kod kombinasyonlarıdır. Nesne yönelimli programlamada nesneler ilgili sınıfın özelliklerini barındıran küçük yapı taşları olarak nitelendirilir.

Gerçek dünyadaki nesnelere ait davranışlar ve özellikler sınıflara aktarılır. Sınıf içerisinde tanımlanmış olan metot ve değişkenlerin her biri ise sınıf üyesidir. Değişkenler isim, soyisim, yaş gibi nesnelere ait niteliksel bilgileri saklarken metotler ise kullanıcı kaydı, kayıtların gösterilmesi, aritmetik işlemler gibi görevleri yerine getiren alt programlardır. Sınıf soyut bir kavram olup direkt olarak kullanılamaz. Sınıflar ancak nesneler oluşturularak kullanılabilir.

Temel Class yapısı aşağıdaki gibidir:

class SinifAdi

{

// değişkenler

// metotlar – fonksiyonlar

}

Nesne Yönelimli Programlama – Örnek Class Tanımlaması

Örnekte görüldüğü üzere Person adında bir sınıf açılmıştır. Sınıf soyut bir kavramdır. Person için tanımlanan Name, Age ve Country propertyleri ise değişkenleri ifade eder.

Fonksiyon Tanımlama

Fonksiyonlar, içeriisnde tanımlanmış olan görevleri yerine getiren kod bloglarıdır. Bir fonksiyon, çağrıldığı yerde işlem yapabileceği gibi geriye değer döndürecek şekilde de tasarlanabilir.

Fonksiyon Tanımlama

Örneğe ek olarak PersonInfo() adında bir fonksiyon tanımlaması da eklenmiştir. Nesne oluşturulurken Person sınıfı içerisindeki property ve fonksiyona ulaşılabilecek.

Nesne Nedir?

Nesne, içerisinde veri saklayan ve saklanan veriler üzerinde işlem yapacak olan metotları bulunduran bileşenlerdir. Her uygulamada tekrar kullanılabilen nesneler ilk oluşturulduklarında hafızada yer kaplar.

Sınıftan Nesne Üretme

Yazımızın başında da belirttiğimiz üzere sınıflar soyut kavramlardır ve bir kere oluşturulur. Nesneler ise aynı sınıftan birkaç kez oluşturulabilir. Nesneler ile sınıf içerisindeki metot ve değişkenlere erişim sağlanabilir.

Sınıftan Nesne Oluşturma

Örnekte Person sınıfından person adından bir nesne oluşturulmaktadır. Oluşturulan nesneye ise sınıf içerisinde değişken olarak tanımlanan Name, Age ve Country değerleri atanmıştır. PersonInfo() fonksiyonu da çağrılarak gönderilen verilerin ekrana bastırılması sağlanmıştır.

Örnek çalıştırıldığında aşağıdaki çıktı alınacaktır:

Nesne Yönelimli Programlama

Nesne Yönelimli Programlama Faydaları Nelerdir

Nesne yönelimli programlamanın yazılım geliştiricilerine ve yazılım programlarına olan faydası oldukça yüksektir. OOP faydaları genel olarak aşağıdaki gibidir:

  • Nesne oluşturma işlemi bir sınıf içerisinde toplanarak tüm projede kullanılabilir duruma getirilir
  • Sınıflar bir kez oluşturulduğu için uzun kodlar yazmanın önüne geçilir ve kısa kodlar ile uygulamalar çalıştırılabilir
  • Uzun kodlar engellendiği için geliştirme süreci oldukça kısalır
  • Nesnelerin birbirinden bağımsız olması bilgi gizliliği konusunda avantaj sağlar
  • Sınıflar sayesinde projede bir yer değiştirilmek zorunda kalındığında her yerden değişmek yerine tek bir sınıf üzerinde değişiklik yapmak yeterli olacaktır. Bu da projedeki zaman kaybını oldukça azaltacaktır.

Sonuç Olarak

OOP kavramı yazılım camiasında en önde gelmesi gereken teknolojilerden biridir. Yazılım projelerinin daha esnek, az kodla çok işin yapılması amaçlanıyorsa nesne yönelimli programlama ile projenin çatısı oluşturulması gerekir.

En temel haliyle sınıf oluşturmak, sınıftan nesne üretmek ve nesne ile sınıf değişkenlerine, fonksiyonlarına ulaşmak bu şekildedir. Bir sonraki yazımda OOP’nin temel 4 işlemini ele alacağım. Yazı için düşünce, görüş ve önerilerinizi yorumlarda belirtebilirsiniz, bir sonraki yazıda görüşmek üzere…  🙋‍♂️😊

 

Yazılım Mühendisi - Backend Developer - Blog Yazarı

2 Yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.