Tam olarak mantığınızı kullanacağınız işlemlere değil nesnelere ve nesnelerin üzerlerindeki işlemlere odaklanan bir programlama dili. Nesne yönelimli programlar, nesnelerin birbirleriyle etkileşim içinde olmasını sağlayarak tasarlanır.
Nesne Tabanlı Programlama Dilleri
-Java
-C++
-Python
-PHP
-JavaScript
-Ruby
-Smalltalk
-Objective-C
Nesne Tabanlı Programlama Yönteminin Dört Temel Özelliği Var Bunlar;
-Encapsulation
-Inharitance
-Abstraction
-Polymmorpshim
Nesne Tabanlı Programlarda her bir object beli bir alt sınıfı, metodları veya prosedürleri içerisinde bulunduran veri değişkenleri örneğidir. Sınıflar belli türdeki nesnelerin metodlarının ve değişkenlerinin şablon tanımlarına deniyor. Buradan da anlıyoruz sınıfın özel bir örneği nesnedir ve içerisinde gerçek değişkenleri barındırır.
Buna örnek verecek olursak da mesela, Öğretmen isimli sınıfımız olsun. Sınıftaki her öğretmen nesnedir ve ad, soyad ve öğretmenlerin başarı düzeyleri mevcuttur. Nesne tabanlı programın bu özelliği sayesinde aynı özellikleri bulunduran bu grubun her bir üyesi için sahip oldukları özellikler ayrı ayrı girilmelidir.
Encapsulation: Nesne tabanlı programların temel kavramlarından biri olan Encapsulation kullanıcıların sınıfların, verilerin ve metotların ne kadar kısmının görüntüleneceğinin ve değiştirilme durumunun korunmasını sağlıyor.
Public: Herkese açık olan.
Private: Özel olan
Protected: Koruma altında olan
Üç adet erişim dönüştürücüsünden bahsedebiliyoruz. Bu erişimlerden public olanı herkese tarafından görülebilen ve değiştirilebilen ayrıca güvensiz bir sınıf çeşididir. Protected lar ise daha güvenilirdir. Privateler de çok güvenilir modifıerlerdir.
Abstraction: Belli bir sınıfın içindeki davranışların ve özelliklerin tanımlanması durumuna deniyor. Buna örnek olarak motor sınıfında, motorun rengi, hızı, tekerlek sayısı, ses sistemi özellikleri arasında yer alıyor. Ayrıca hız yapması, fren yapması ve durması ise davranışları arasında yer alıyor ve bunları metotlar ile tanımlıyoruz.
Polymmorpshim: Farklı nesnelerin aynı mesaja farklı cevap vermesine deniyor. Bu özellik sayesinde programlamalar daha kolay bir hale geliyor.
Inharitance: Nesneye yönelik olan programlarda tek nesneler tek programa ait nesne sınıfına ait örneklere verilebiliyor. Ayrıca bir nesne sınıfında alt nesneler sınıflarını oluşturabiliyorsak buradan da anlamlıyız ki nesnelerin türetme özelliğinden yararlanılmış.
Nesne tabanlı programlar sayesinde nesnelerin nasıl kullanılacağını, ne işe yaradıklarını öğreneceğiniz gibi yazılım alanlarında büyük faydasını da göreceksiniz.