14 Ağustos 2014 Perşembe

Nedir Bu OOP ?

Nedir bu OOP?

Her yazılımcının bilmesi gereken en önemli unsurlardan birisi de kullanacağı metodolojidir. OOP yani Object Oriented Programming diğer bir deyişle Nesne Yönelimli Programlama, yazılım dünyasında sıkça rastladığımız ve birçok yerde öneminin altının defalarca çizildiği bir terimdir.

Uygulama geliştirme ve yazılım dünyasında nesne yönelimli programlama aslında sandığınızdan daha eskiye dayanmaktadır.1960’larda yordamsal programlama’nın  (procedurel programming) tıkandığı ve yeni arayışların sürdüğü bir dönemde ortaya çıkmış, takip eden 10 yıl boyunca gelişimini ve etkisini sürdürmüş, 1970’lerde ise yazılım dünyasının egemen metodolojisi olacağının sinyallerini vermiştir.

Kısa bir tarihçenin ardından gelelim bizim için önemli olana kısmına. Bu kadar eski olmasına rağmen neden günümüzde halen tercih ediliyor ve gelecekte de tercih edilmeye devam edecek en güçlü normlardan birisi? Bu sorunun cevabı ise oldukça basit. Çünkü akla ve mantığa dayalı, matematiksel ve algoritmik şekilde ilerleyen bir süreç olan yazılım geliştirme, kendisi gibi mantığa ve işlevselliğe dayalı bir metodolojiye ihtiyaç duyuyordu. Bu ihtiyacı tam anlamıyla gideren bir norm olan OOP günümüz programlamacılığının da temel yapı taşlarından birisi.

İnsanların ihtiyaçları ve talepleri arttıkça, bu taleplere cevap verebilmek için çalışma kollarındaki departmanlardaki kişi sayısı da artış göstermiştir. Günümüzde birçok şirket ekip çalışması içerisinde işlerini yürütmektedir. Yordamsal programlama ile oluşturulan yazılımlar blok şeklinde ve tekdüze yazılırdı. Programı yazan kişi tüm detayları bilse de ikinci bir programcı gelip dahil olduğunda program üzerinde değişiklik yapabilmesi için ya tüm programa hakim olması gerekirdi yada ilk programcının ona yardım etmesi.

Teknolojik gelişmelerin önündeki bu gibi engelleri kaldıran ise Nesne Yönelimli Programlama olmuştur. Çünkü Programlama süreci ve programın gelişimi tamamen yeni nesneler üretme ve onları kullanmaya yöneliktir. Kullanıcıya sağladığı esnek yapı sayesinde, gelişime katkı sağlayacak ekip üyelerinin programcının oluşturduğu nesneler üzerinde değişiklik yapması yeterli olacaktır. Tüm programı değil, sadece o nesnenin kullanıldığı program bloğu bu değişiklikten etkilenecektir.

Nesne Yönelimli Programlamanın kavranılması için şöyle bir örnek verelim.  Paketleme işi  yapıyorsunuz ve kurumunuzun logosunu her yaptığınız paketin üstünde yer alması gerekiyor. Basit bir kurum logonuz var ve çiziminiz iyi. Peki buna rağmen tek tek her kutunun üstüne elle çizim mi yaparsınız, yoksa logonun bir kalıbını çıkarıp ihtiyacınız olduğunda bu kalıpla paketlere baskı mı yaparsınız? Akılcı ve mantıklı düşündüğünüzde tabii ikinci seçenek doğru olacaktır. Nesne yönelimli programlama da buna benzer. Nesne yada obje(Sınıf, Metod, Property ) oluşturulur ve ihtiyaç olduğu anda o nesne çağırılır.

Bu yüzeysel ve kavramsal yazıda da gördüğünüz üzere OOP günümüz programlamacılığında önemli bir yere sahiptir ve bu önemi artarak ilerleyecektir. İyi bir programlamacı olmak için piyasaya ve sektöre egemen teknoloji ve normları bilmek kadar, OOP gibi bir metodolojinin önemini bilmek ve kendi yazılımlarını üretirken de nesneye dayalı üretmek hem kabul görmeniz açısından hem de standardizasyon açısından oldukça gerekli ve eğilim haline getirilmesi gerekken bir durumdur. Detaylı bilgi için www.aribilgi.com

Hiç yorum yok:

Yorum Gönder