İyi Bir Programcı Olmak için Nesne Neden Bu Kadar Önemli?

object oriented,nesneye yönelik programlama,OOP,java Öncelikle şunu kabul etmek lazım bir programlama dilinin tüm syntax’ını bilmek kimseyi çok iyi programcı yapmaz. Sen istediğin kadar java bil, c# bil hatta o dili tüm özelliklerine kadar bil LINQ’sü olsun, Servlet’i olsun ama bir problemle karşılaştığında onun modellemesini yapamıyorsan o bildiğin anlamsız söz dizimlerini bilmek hiçbir işimize yaramaz. Onlara ihtiyaca uygun anlam kazandıramıyorsan yazdıklarının hiçbir değeri yoktur. Tabi syntax’ını bilmiyorsan program yazman mümkün değil orası tartışılmaz ama benim anlatmak istediğim her iki satır kod yazabilen gerçek programcı değildir.


Bu konu hakkında Apress yayıncılıktan çıkan Jacquie Barker’ın ‘Beginning Java Objects’ adlı kitabından edindiğim bilgilere dayanarak yazıyorum. Zaten OOP hakkındaki çoğu yazımda bu kitaptan edindiğim bilgilere yer vereceğim. Ve kitap hakkında şunu söyleyebilirim gayet güzel bir kaynak ve tavsiye ederim.

Düşününce yazılım projelerini bir evin yapılışına benzetebiliriz. Öncelikle elimizdeki malzemeyi iyi tanıyıp onunla neler yapabileceğini bilmeliyiz. Yani kullanacağımız dile hakim olup, onunla neyi iyi yapıp neyi yapamayacağımızı bilmeliyiz. Ve bunu bilerek yazdığımız program esnek olmalı nasıl mı şöyle ki : evin penceresini beğenmediğimizde tüm evi yıkmak yerine nasıl çıkarıp yenisini takabiliyorsak, yazdığımız programın bir yerinin değişmesi gerekiyorsa sadece o kısmı değiştirmenin mümkün olması gerekir. Tüm bunlar gerekli çünkü böyle olmuyorsa kullandığınız dilin birçok güzel özelliği vardır ve onları kullanmıyorsunuzdur. Müşteri sizden yazdığınız programın bir bölümünü değiştirmenizi istediğinde programı baştan yazmaya kalkarsanız para ve zaman kaybınız çok olacaktır. Bunun gibi birçok nedenden ötürü bu OO yapıyı oluşturmak çok önemlidir. Yani kod yazmanın ötesinde bu OO yapıyı oluşturabilmek gerçek programcı olmanızı sağlayacaktır.

Tavsiyem bu yüzden java veya c# gibi nesneye yönelik programlama dili öğrenirken en azından elinize ‘Object Oriented’ la ilgili bir kitapta alın faydasını göreceksiniz.

0 yorum :

Yorum Gönder