Nesne Yönelimli Programlama (Object Oriented Programming/OOP) , programlama konusunda çığır açan, uzman-acemi bütün programcıların işini kolaylaştıran bir teknolojidir.
Özellikle bu işle uğraşanların yakından bildiği gibi Nesneye Yönelik Programlama normal bir işlemi çok daha hızlı ve kolay bir şekilde yapmanızı sağlamaktadır. Daha profesyonel bir dil ile kodlarınızı sınıflar içerisine yazıyorsunuz ve sınıflardan türeyen nesneler üzerinden kodlarınızı çağırıyorsanız Nesne Yönelimli Programlama yapıyorsunuz anlamına geliyor. Nesneye Yönelik Programlama, bir çok yazılım dersinde ilk önce anlatılan teknolojilerden bir tanesidir. Çünkü Nesneye Yönelik Programlama’nın temelini oturtmak sizi çok fazla yükten kurtaracaktır. Nesneye Yönelik Programlama’nın 3 ana prensibi vardır. Bunlar Encapsulation, Polymorphism, Inheritance’dır.
Encapsulation Nedir ?
Encapsulation türkçe Kapsülleme anlamına gelmektedir. Bu prensip nesne hakkındaki bilgi ve yapılacak işlemlerini ortaya koyar. Herhangi bir nesne düşünelim örneğin şemsiye; şemsiyenin rengi, boyutu ve örneğin açılması gibi özelliklerin tamamı Encapsulation prensibinde ortaya koyulur.
Inheritance Nedir ?
Inheritance türkçe kalıtım anlamına geliyor. Kalıtım prensibi nesnelerin bir nesne oluşturulmasını ortaya koyar. Biraz önce ki şemsiye örneği üzerinden devam edersek. Şemsiye için bir sopa, demir vs. gerekiyor bunun gibi nesnelerden oluşan nesneleri ortaya koyar.
Polymorphism Nedir ?
Polymorphism türkçe çok biçimlilik anlamına gelmektedir. Çok biçimlilik prensibi bir işlemin veya metodun bir çok nesne tarafından kullanılabilmesi anlamına geliyor. Yani örneğin bir arabayı düşünürsek ayna ve tekerlek farklı iki nesnedir. Dönme işlemi ikisi içinde geçerli olarak kullanılabilir.
Nesneye Yönelik Programlama, programcıların o dağınık ve anlaşılmaz yapılarını tamamen ortadan kaldırıyor diyebiliriz. Bu teknoloji sizlere yapacağınız işin parçalara ayırıp organize bir şekilde hareket etmenizi sağlar. Yani bir araba yapacaksanız, tekerlek, ayna, iskelet, direksiyon, pedal vs. her şeyi ayrı ayrı yapıp bir bütün haline getirmenizi sağlıyor. Bu sayede siz tekerlekteki sorunu ararken ayna, direksiyona vs. boşuna bakmamış bunların kodlarını incelemekten kurtulmuş oluyorsunuz. Aynı zamanda eğer yeni bir şey eklemek isterken de yine sizleri istediğiniz yere götürüyor. Ne kadar parçalayabilirim derseniz bu size kalmış. Aynı zamanda OOP( Object Oriented Programming) sayesinde kodlarınız sizin dışınızda gören kişiler tarafından da kolayca algılanabilir hale gelmektedir.
Eyvallah abi yavaş yavaş anlıyorum bu konuları açıklayıcı oldu bu yazın