Nesne Yönelimli Programlama (OOP)

Nesneye yönelik programlama (OOP), programların işlevler ve mantık yerine veriler veya nesneler etrafında düzenlendiği bir programlama dili modelidir. Bir nesne, benzersiz özelliklere ve davranışa sahip bir veri alanı olarak tanımlanabilir. Bir nesnenin örnekleri, ad ve adres gibi özelliklerle tanımlanan, insanlar gibi fiziksel varlıklardan, widget gibi küçük bilgisayar programlarına kadar değişebilir. Bu, mantığın içindeki verilerin nasıl tanımlanacağı yerine, mantığın nasıl yazıldığının vurgulandığı programlamaya tarihsel yaklaşıma karşı çıkıyor.

 

OOP’deki ilk adım, bir programcının manipüle etmek istediği tüm nesneleri ve birbirleriyle nasıl ilişki kurduğunu, genellikle veri modelleme olarak bilinen bir alıştırmayı tanımlamaktır. Bir nesne bilindiğinde, içerdiği veri türünü ve onu işleyebilecek herhangi bir mantık dizisini tanımlayan bir nesne sınıfı olarak genelleştirilir. Her bir ayrı mantık dizisi bir yöntem olarak bilinir ve nesneler mesaj olarak adlandırılan iyi tanımlanmış arayüzlerle iletişim kurabilir.

 

Basitçe söylemek gerekirse, OOP geliştiricilerin manipüle etmek için gereken mantıktan ziyade manipüle etmek istedikleri nesnelere odaklanır. Programlamaya yönelik bu yaklaşım, geniş, karmaşık ve aktif bir şekilde güncellenen veya korunan programlar için çok uygundur. Nesne yönelimli bir programın düzenlenmesi nedeniyle, bu yöntem aynı zamanda projelerin gruplara ayrılabileceği işbirlikçi gelişim için elverişlidir. OOP’nin ek avantajları kod yeniden kullanılabilirliği, ölçeklenebilirlik ve verimliliği içerir.

 

OOP İlkeleri

 

Kapsülleme

Her nesnenin uygulanması ve durumu özel olarak tanımlanmış bir sınır veya sınıf içinde tutulur. Diğer nesneler bu sınıfa veya değişiklik yapma yetkisine sahip değildir, ancak yalnızca genel işlevler veya yöntemler listesini çağırabilir. Veri gizlemenin bu özelliği daha fazla program güvenliği sağlar ve istenmeyen veri bozulmalarını önler.

 

Soyutlama

Nesneler, yalnızca diğer uygulamaların kullanımıyla ilgili olan ve gereksiz uygulama kodlarını gizleyen iç mekanizmaları ortaya çıkarır. Bu konsept, geliştiricilerin zaman içinde daha kolay değişiklik ve ekleme yapmalarına yardımcı olur.

 

Kalıtım

Nesneler arasındaki ilişkiler ve alt sınıflar atanabilir, böylece geliştiricilerin benzersiz bir hiyerarşiyi korurken ortak bir mantığı tekrar kullanmalarına izin verilir. OOP’ın bu özelliği daha kapsamlı bir veri analizini zorlar, geliştirme süresini azaltır ve daha yüksek bir doğruluk düzeyi sağlar.

 

Polimorfizm

Nesnelerin içeriğe bağlı olarak birden fazla forma girmesine izin verilir. Program, kodun çoğaltılması gerekliliğini azaltacak şekilde, bu nesnenin her yürütülmesi için hangi anlam veya kullanımın gerekli olduğunu belirleyecektir.

 

Nesneye yönelik programlama dilleri

 

Simula ilk nesne yönelimli programlama dili olarak kabul edilirken, en popüler OOP dilleri:

–  Java

–  Javascript

–  Python

–  C++

–  Visual Basic .Net

–  Ruby

–  Scala

–  Php……