Nesne tabanlı programlama (OOP), programcıların bir veri yapısının, veri türünü ve veri yapısına uygulanabilecek işlem türlerini (fonksiyonları) tanımladığı bir bilgisayar programlama türünü (yazılım tasarımı) ifade eder.
Bu şekilde, veri yapısı hem verileri hem de işlevleri içeren bir nesne haline gelir. Böylelikle programcılar bir nesne ile diğer nesne arasında ilişki oluşturabilir. Örneğin, nesneler karakteristik özelliklerini diğer nesnelerden devralabilir.
Temel OOPL Kavramları
Nesne yönelimli programlama dillerinde yeniyseniz, kod kullanmaya başlamadan önce birkaç temel bilgiyi bilmeniz gerekir.
- Abstraction: Nesnelerin ve prosedürlerin ortak özelliklerini seçme (soyutlama) süreci.
- Class: Bir nesne kategorisi. Sınıf, kendisine ait farklı nesnelerin tüm ortak özelliklerini tanımlar.
- Encapsulation: Yeni bir varlık oluşturmak için öğeleri birleştirme işlemi. Procedure, bir dizi bilgisayar yönergesini birleştirdiği için bir tür kapsülleme yöntemidir.
- Information hiding: Bir nesnenin veya işlevin ayrıntılarını gizleme işlemi. Bilgi gizleme, karmaşıklığı azalttığı için güçlü bir programlama tekniğidir.
- Inheritance: farklı sınıflar arasındaki “is a” ilişkidir.(Kalıtım)
- Interface: Uygulamaların birbirleriyle ve donanımla iletişim kurmak için kullandığı diller ve kodlar. (Arayüz)
- Messaging: Mesaj aktarma, paralel programlama ve nesne yönelimli programlamada kullanılan bir iletişim şeklidir.
- Object: hem verileri hem de verileri işlemek için prosedürleri içeren bağımsız bir varlık.(Nesne)
- Polymorphism: Bir programlama dilinin, veri türüne veya sınıfına bağlı olarak nesneleri farklı şekilde işleme yeteneği.
- Procedure: bir programın belirli bir görevi gerçekleştiren bölümü.
Nesne Tabanlı Programlamanın Avantajları
Nesne yönelimli programlama tekniklerinin prosedürel programlama tekniklerine göre temel avantajlarından biri, programcılar yeni bir nesne oluşturduğunda üzerinde değiştirme yapmaksızın modüller oluşturmalarını sağlamasıdır. Bir programcı, özelliklerinin çoğunu mevcut nesnelerden devralan yeni bir nesne oluşturabilir. Bu, nesne yönelimli programların kullanımını kolaylaştırmaktadır.
OOPL – Nesne Tabanlı Programlama Dilleri
Nesne tabanlı programlama dili (OOPL), nesne yönelimli modele dayanan yüksek düzeyli bir programlama dilidir. Nesne tabanlı programlama dillerine örnek olarak Java, C ++ ve Smalltalk verilebilir.
- ABAP/4
- C#
- C++
- Eiffel
- Java
- Object Pascal
- Objective-C
- PHP
- Python
- REALbasic
- Ruby
- Simula
- Smalltalk
- Visual Basic .NET
İlk OOPL
1960’larda Oslo’daki Norveç Bilgi İşlem Merkezinde geliştirilen Simula, nesne tabanlı ilk programlama dili olarak kabul edilir.
Ancak yine de Smalltalk adlı programlama dili tek gerçek nesne yönelimli programlama ortamı olarak kabul edilir. İlk olarak 1960’ların sonunda Xerox Corporation‘ın Palo Alto Araştırma Merkezi’nde eğitim amaçlı geliştirilmiş ve 1972’de piyasaya sürülmüştür.
Kaynak: webopedia.com