Object (Nesne)
Object (nesne), nesne yönelimli programlamanın temelini oluşturan kavramdır. Nesneler tıpkı fiziksel dünyada bulunan nesnelere benzer, durumları ile davranışları vardır.
Object (Nesne) Nedir?
Yazılımda kullanılan nesnelerin sahip olduğu durumlar değişkenler olarak olarak saklanır. Davranışları ise yöntemlerle belirlenir. Nesneler, değişkenler, fonksiyonlar ve veri yapılarının bir birleşimidir. Oluşturulan her nesne, sınıf olarak adlandırılan nitelik ve davranış modellerinden türetilir. Nesnelerin sahip olduğu özellikler ise şu şekildedir:
Her nesnenin kendisine özel bir kimliği bulunur. İki nesne aynı ada sahip olamaz. Bu sebeple her bir nesne için benzersiz isimlendirmeler kullanılmalıdır.
Nesnelerin sahip olduğu özellikleri belirten durumları bulunur. Nesnede saklanan veriler durum olarak tanımlanır. Değişkenler ile belirlenirler.
Nesnelerin gerçekleştirebileceği eylemler, nesnenin davranışını belirler.
Nesne Yönelimli Programlama Nedir?
Object oriented programming (OOP) olarak adlandırılan ve Türkçe’de nesne yönelimli programlama (NYP) olarak kullanılan programlama yaklaşımında, her işlev nesneler olarak tanımlanır ve geliştirme bu nesneler üzerinden gerçekleştirilir. Oluşturulan nesnelerin birbirleri ile etkileşime girmeleri üzerine kurulu bir yazılım geliştirme biçimidir.
C++, Python, Java, PHP, Swift, Kotlin, Ruby, Dart, Objective-C gibi yaygın olarak kullanılan programlama dillerinin bir çoğu nesne yönelimli programlamayı destekleyen özelliklere sahiptir. Bir programlama dili ile nesne yönelimli programlama gerçekleştirebilmek için sahip olması gereken soyutlama, sarmalama, kalıtım ve çok biçimlilik özelliklerinin bulunması gerekir.
- Soyutlama (Abstraction): Soyutlama, alt sınıfların ortak özelliklerine sahip ancak nesnesi bulunmayan bir üst sınıf oluşturmadır. Böylelikle soyut üst sınıf oluşturulmuş olur.
- Kapsülleme veya Sarmalama (Encapsulation): Kapsülleme, oluşturulan nesnelere ait metot ve özelliklerin dışarıdan değiştirilmesini önlemek için kullanılır. Nesnenin sahip olduğu metot, veri ve değişkenler diğer nesneler tarafından ne şekilde erişilebileceğini belirtmedir. Kapsülleme için Public, Private ve Protected olmak üzere üç farklı belirteç kullanılır.
- Kalıtım veya Miras Alma (Inheritance): Kalıtım veya miras alma özelliği, bir sınıftan başka sınıflar türetmedir. Bir sınıftan türetilen bir başka sınıf, türetildiği sınıfın metot ve değişkenlerini miras alır. Böylelikle sınıflar arasında alt-üst ilişkisi oluşturulur.
- Çok Biçimlilik (Polymorphism): Bir sınıfta yer alan metotu, başka bir sınıfta aynı isim ile ancak değiştirerek kullanmadır. Kalıtımla türetilen sınıftan alınan metot işlevi değiştirilerek kullanılır.
Nesnelerin ve Nesne Yönelimli Programlamanın Avantajları
Nesne yönelimli programlama ile uygulama geliştirmek günümüzde birçok programlama dili tarafından desteklenir ve geliştiriciler tarafında da tercih edilir. Yazılım geliştirmede nesneleri kullanmanın geliştiricilere sağladığı pek çok fayda sağlar.
Oluşturulan nesneler sayesinde kodun yeniden kullanımı kolay hale gelir. Nesneler yeniden kullanılabilir ve üzerlerinde değişiklik yapılabilir. Geliştirilen yazılımlar ortaya çıkan herhangi bir hata durumunda, hata nesneden kaynaklanıyorsa tespit etmesi ve düzeltmesi, kodun tamamına göz atmaktan çok daha basit bir şekilde gerçekleştirilebilir. Proje üzerinde çalışan geliştiricilerin kullandıkları nesnelerin arka planında gerçekleşen işlemleri bilmesine gerek yoktur. Kısacası nesnelerin kullanımı, yazılım geliştirme sürecini daha basit hale getirerek kolaylaştırır. Ayrıca geliştirilen koda modülerlik kazandırarak, geliştirme ve bakım sürecinde avantaj sağlar. Yüksek ölçeklenebilirliğe sahip uygulamalar geliştirilmesine katkı sağlar.
Ücretsiz eğitimlerimiz seni bekliyor.
Her biri alanında uzman eğitmenler tarafından hazırlanmış eğitimlerimizden sana uygun olanı keşfedip, hemen eğitime başlayabilirsin. Süre kısıtlaması olmayan eğitimlerimizi, hiç bir ücret ödemeden hemen keşfetmeye başla.