badge icon

Bu madde henüz onaylanmamıştır.

Madde

Nesne Yönelimli Programlama

Alıntıla
görsel_2026-04-29_221611381.png

Nesne Yönelimli Programlama (NYP)

Temel Amacı

Kodun tekrar kullanımı ve sürdürülebilirlik

Popüler Diller

Java, C++, C#, Python

İlk Ortaya Çıkış

1960'lar (Simula)

Nesne yönelimli programlama (Object-Oriented Programming - OOP), bilgisayar programlarını nesneler (objects) ve bunların birbiriyle olan etkileşimleri üzerine kurgulayan bir programlama paradigmasıdır. Veriyi ve bu veri üzerinde işlem yapacak fonksiyonları tek bir yapı içerisinde birleştiren bu yaklaşım, yazılım geliştirme süreçlerinde kodun yeniden kullanılabilirliğini, sürdürülebilirliğini ve karmaşık sistemlerin daha kolay yönetilmesini sağlar. Geleneksel prosedürel programlamanın aksine, nesne yönelimli programlama "ne yapılacağı" sorusundan ziyade "üzerinde işlem yapılacak varlığın ne olduğu" sorusuna odaklanır.

Nesne Yönelimli Programlamanın Temel Bileşenleri

Nesne yönelimli sistemlerin inşasında kullanılan iki temel yapı taşı sınıf ve nesnedir. Bu yapılar, yazılımın iskeletini oluşturur ve gerçek dünyadaki modellerin dijital ortama aktarılmasını sağlar.

Sınıf (Class) ve Nesne (Object) Kavramı

Sınıf, bir nesnenin özelliklerini (attributes) ve davranışlarını (methods) tanımlayan soyut bir taslak veya şablondur. Teknik literatürde bir veri tipi olarak da nitelendirilebilen sınıflar, nesnelerin nasıl bir yapıya sahip olacağını belirler. Nesne ise, bir sınıftan türetilen ve bellekte yer kaplayan somut bir örnektir (instance). Örneğin, "Araba" bir sınıf iken, belirli bir plakaya ve renge sahip olan bir araç, o sınıfın bir nesnesidir.


Bir nesne örneği (İTÜ)

OOP Prensipleri: Dört Temel Direk

Nesne yönelimli programlamayı diğer metodolojilerden ayıran ve modern yazılım mimarisinin temellerini atan dört temel prensip bulunmaktadır.

Soyutlama (Abstraction)

Soyutlama, bir nesnenin sadece gerekli olan özelliklerini kullanıcıya sunarken, arka plandaki karmaşık uygulama detaylarını gizleme işlemidir. Bu sayede yazılımcı, bir sistemin nasıl çalıştığından ziyade ne iş yaptığına odaklanabilir. Karmaşıklığın azaltılması ve güvenliğin artırılması açısından kritik bir öneme sahiptir.

Kapsülleme (Encapsulation)

Kapsülleme, nesneye ait verilerin dış dünyadan doğrudan erişime kapatılarak korunmasıdır. Verilere ancak sınıf tarafından belirlenen metodlar (getter/setter) aracılığıyla erişilebilir. Bu prensip, veri bütünlüğünü sağlar ve hatalı veri girişlerinin önüne geçer.

Kalıtım (Inheritance)

Kalıtım, bir sınıfın (alt sınıf/subclass), başka bir sınıftan (üst sınıf/superclass) özellik ve metod devralmasıdır. Bu özellik, kodun tekrar yazılmasını engelleyerek hiyerarşik bir yapı oluşturulmasına imkan tanır. Örneğin, "Taşıt" sınıfındaki genel özellikler "Uçak" veya "Gemi" sınıflarına kalıtım yoluyla aktarılabilir.

Çok Biçimlilik (Polymorphism)

Çok biçimlilik, bir metodun veya nesnenin farklı durumlarda farklı davranışlar sergileyebilme yeteneğidir. Özellikle kalıtım yoluyla gelen metodların, alt sınıflarda yeniden tanımlanması (overriding) ile gerçekleştirilir. Bu sayede aynı isimli bir fonksiyon, farklı nesne türlerinde kendine özgü sonuçlar üretebilir.


Polymorphizm örneği (İTÜ)

 

Kaynakça

Moğulkoç, Yeşim. Nesne Yönelimli Programlamaya Giriş. Ankara: Ankara Üniversitesi Açık Ders Malzemeleri, t.y. Erişim tarihi: 29 Nisan 2026. https://acikders.ankara.edu.tr/pluginfile.php/110580/mod_resource/content/1/NYPeGiris.pdf.

“C# Object-Oriented Programming.” W3Schools. Erişim tarihi: 29 Nisan 2026. https://www.w3schools.com/cs/cs_oop.php.

“Nesne Yönelimli Programlama (Object-Oriented Programming).” İTÜ Bilgi İşlem Daire Başkanlığı – Seyir Defteri, 5 Şubat 2019. Erişim tarihi: 29 Nisan 2026. https://bidb.itu.edu.tr/seyir-defteri/blog/2019/02/05/object-oriented-programming.

Yazar Bilgileri

Avatar
YazarŞira Dörtkaşlı29 Nisan 2026 19:08

Etiketler

Tartışmalar

Henüz Tartışma Girilmemiştir

"Nesne Yönelimli Programlama" maddesi için tartışma başlatın

Tartışmaları Görüntüle

İçindekiler

  • Nesne Yönelimli Programlamanın Temel Bileşenleri

    • Sınıf (Class) ve Nesne (Object) Kavramı

  • OOP Prensipleri: Dört Temel Direk

    • Soyutlama (Abstraction)

    • Kapsülleme (Encapsulation)

    • Kalıtım (Inheritance)

    • Çok Biçimlilik (Polymorphism)

Bu madde yapay zeka desteği ile üretilmiştir.

KÜRE'ye Sor