• Hakkımızda
  • Bize Katıl
  • Sizden Gelenler
  • İletişim
Yazılım Karavanı | Bilişim - Teknoloji - Blog
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar
No Result
View All Result
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar
No Result
View All Result
Yazılım Karavanı | Bilişim - Teknoloji - Blog
No Result
View All Result
Home Genel

Nesne Yönelimli Programlama (OOP)

Ali Murat Çevik by Ali Murat Çevik
Ekim 9, 2018
in Genel
3 min read
0
Nesne Yönelimli Programlama (OOP)
WhatsApp'ta PaylaşTwitter'da PaylaşLinkedIn'de PaylaşTelegram'da Paylaş

Yapısal programlama 1960 yıllarında, nesne yönelimli programlama ise ilk olarak Bjarne Stroustrup tarafından C++ ile 1800lü yılların başında geliştirilmiştir. Buradan C++ dilinin, C diline göre daha üstün olduğu sonucunu çıkarmak yanlıştır. İkisinin de kullanım yerleri farklıdır ve C dili şu anda mevcut işletim sistemlerinin temelini oluşturmaktadır. Yine aynı şekilde Java’ nın C++ dilinden daha üstün olduğunu söylemekte doğru değildir.

Hergün gelişen yazılım sektöründe kodların çok karmaşık ve uzun bir hal alması, grafik ara yüzünün hayatımıza girmesi, nesne yönelimli programlama ihtiyacını doğurmuştur. Programcının işini büyük ölçüde kolaylaştıran bu teknoloji, işlemleri hızlı ve zahmetsiz bir şekilde yapılmasını sağlar. Nesne yönelimli programlama dillerinden bazıları: Ruby, C++, Java, Php, C#, ,Objective-C, Pascal, Python, VB.net …

JAVA, Pure Object Oriented (saf nesne yönelimli programlama dili) olarak tanımlanır ve Java baştan aşağı nesne yönelimli olarak inşa edilmiştir.

Bu teknoloji ile classlar içerisinde yazılmış olan kodlar, classlardan türeyen nesneler üzerinden çağırılıyor. Yani yapacağınız işi parçalara ayırarak daha kolay bir şekilde yapmanızı sağlıyor.

OOP, takım halinde bir proje geliştirmeyi de oldukça kolaylaştırmaktadır. Kısacası OOP, “karmaşıklık” sorununun çözümüdür diyebiliriz.

Bir kitabın; kapağı, sayfaları bir araya getirilerek üretilmesi gibi düşünülebilir. Nesne yönelimli programlama da nesneler birbirleriyle iletişim halindedir.

NYP’ nin 4 temel özelliği aşağıdaki gibidir. Bir dil nesne yönelimliyse bu özelliklerin tümünü sağlamak zorundadır.

1. Soyutlama (Abstraction)
  Nesnelerin sadece gerekli görülen özelliklerinin kodlanması diyebiliriz. Soyutlamaya örnek olarak bir kitapevinden “Bana bir kitap verir misiniz?” demeyle “Bana X yayınının Java kitabını verir misiniz” arasındaki fark gibi düşünülebilir. Burada içeriği ne olursa olsun istenilen nesne bir kitaptır, ancak kitap nesnesi artık soyutlanmış olacaktır.

2. Sarmalama / Paketleme/Kapsülleme (Encapsulation)
Örneğin bir kitabı ele alalım. Bu kitabın kapak rengi, sayfa sayısı gibi özellikleri encapsulation olarak ifade edilir. 

3. Miras Alma/Kalıtım (Inheritance)         
  Bu özellik nesneden nesne oluşturma gibi düşünülebilir. Yazılan kod defalarca başka bölümlerde kullanılabilir. Örneğin kitapta kâğıt, mürekkep gibi ihtiyaçlar vardır. Buradaki kâğıt ve mürekkepte birer nesnedir. Örneğin kitap sınıfına edebiyat, roman gibi değişkenler ekleyebiliriz. Buradaki edebiyat, roman gibi değişkenler kitap sınıfını miras olarak almaktadır. 

4. Çok Biçimlilik (Polymorphism)         
  Polymorphism ile bir metodu birden fazla nesnenin kullanması sağlanmaktadır. Kitaptaki her bölümde farklı bilgiler vardır ancak okuma işlemi her sayfa için geçerlidir.

alim cevik
Tags: Genel
SendTweet3Share1Share
Önceki Gönderi

Markdown Syntax

Sonraki Gönderi

İnternet Dünyası ve Çocukları Bekleyen Tehlikeler

İlgili Yazılar

2022’nin En Popüler Programlama Dilleri ve Python

2022’nin En Popüler Programlama Dilleri ve Python

by Ali Murat Çevik
Haziran 17, 2022
0

Herkese selamlar, bu yazıda 2022 Haziran ayı itibariyle en popüler programlama dillerinden bahsedeceğim. Keyifli okumalar :) Programlama dilleri yapısı gereği...

Azure DevOps Rest Api ile Çalışmak

Azure DevOps Rest Api ile Çalışmak

by Mercan Karacabey
Ocak 28, 2022
0

Bu yazıyı, projede kullanırken özellikle kaynak sıkıntısı yaşamış olduğum için, ekstra bir kaynak türetebilmek amacıyla yazmak istedim. Microsoft’un kendi yayınlamış...

Azure Application Insights

Azure Application Insights

by Mercan Karacabey
Aralık 18, 2021
0

Azure Application Insights, Monitoring için kullanılır. Azure monitoringin bir özelliği olan Application Insights, geliştiriciler ve DevOps uzmanları için genişletilebilir bir Uygulama Performansı...

Google Cloud Teknolojileri

Google Cloud Teknolojileri

by Mercan Karacabey
Ağustos 6, 2021
0

Her şeyden önce Google Cloud teknolojileri üzerine yazıyor olduğum bu metinde ilk cevaplamamız gereken kısım Cloud Computing, Türkçesiyle “Bulut Bilişim”...

5 Ana Başlıkta “Kişisel Verilerin Korunması Kanunu”

5 Ana Başlıkta “Kişisel Verilerin Korunması Kanunu”

by Tunahan Tekeoğlu
Mayıs 16, 2021
0

KVKK Nedir? Teknolojinin hayatımızı iyiden iyiye neredeyse ele geçirmesi ile birlikte “kişisel verileri koruma” konusu ve konusu kişiler, kurumlar ve...

Next Post
İnternet Dünyası ve Çocukları Bekleyen Tehlikeler

İnternet Dünyası ve Çocukları Bekleyen Tehlikeler

Arka Kapı Dergisi Çekilişi!

Arka Kapı Dergisi Çekilişi!

Bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

  • Popüler
  • Yorumlar
  • En Yeniler
Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

Temmuz 26, 2021
B Ağaçları (B Trees)

B Ağaçları (B Trees)

Ağustos 24, 2020
Splash Screen Yapımı #Flutter

Splash Screen Yapımı #Flutter

Mayıs 25, 2020
Gini Index Kullanılarak Karar Ağacının (Decision Tree)  Oluşturulması

Gini Index Kullanılarak Karar Ağacının (Decision Tree) Oluşturulması

Ağustos 20, 2020
2020 ‘nin En Güncel ve Tehlikeli Zararlı Yazılımları

2020 ‘nin En Güncel ve Tehlikeli Zararlı Yazılımları

6
Magento 2 Detaylı Kurulum & Hatalar

Magento 2 Detaylı Kurulum & Hatalar

5
Flutter’da TFLite Kullanımı

Flutter’da TFLite Kullanımı

4
Bubble Sort (Kabarcık Sıralama) Algoritması

Bubble Sort (Kabarcık Sıralama) Algoritması

2
VGG-19 Transfer Learning ile Görüntü Sınıflandırma

VGG-19 Transfer Learning ile Görüntü Sınıflandırma

Eylül 12, 2022
SOC Sistemler Üzerine Faydalı Notlar

SOC Sistemler Üzerine Faydalı Notlar

Eylül 2, 2022
Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

Ağustos 23, 2022
Makine Öğrenimi Nedir?

Makine Öğrenimi Nedir?

Ağustos 4, 2022

Reklam

Yazılım Karavanı | Bilişim – Teknoloji – Blog

Bilgi Teknolojileri alanına meraklı herkesin buluşma noktası!

No Result
View All Result
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar

© 2020 Yazılım Karavanı Kaynak gösterilmesini rica ederiz.