Programcılıkta isimlendirmenin önemi

7 Ağu

Bu blog yazıma konu olarak programcılıkta isimlendirmenin önemini seçtim ancak mesele aslında bir kitap yazdıracak kadar mühimdir. Hatta bu konuyu kitaplarına konu almış programcılar da mevcuttur.

Bilgisayar bilimine yıllarını vermiş kişilerden bu konunun aslında zorlayıcı bile olduğunu duyunca insan bir kez daha durup düşünüyor. Phil Karlton şu sözlerle isimlendirmenin zorluğundan bahsetmiştir: “There are only two hard things in Computer Science: cache invalidation and naming things”. Yani bilgisayar biliminde en zor iki şeyden biri isimlendirmelerdir.

Bilgisayar bilimine programlama branşı açısından baktığımızda mimari tarafında, kodlama sırasında ve veri tabanlarında yapılan isimlendirmeler, bir sistemin anlaşılabilir olması açısından çok önemlidir. Anlaşılabilirliğin sağlanması için programcılar olarak niyetimizi ortaya koyan isimlendirmeler yapmalıyız. Doğru isimler bulmak, iş modeline göre veya sistemin büyüklüğüne göre zorlaşabilir. Yazılım ve mimari genişledikçe verilen isimler birbirine benzemeye başlayabilir. Benzerliklerin artması ise kafa karışıklığına yol açar.

Doğru isimleri bulduğumuzda ise dikkat etmemiz gereken bir diğer husus, okunabilirlik kurallarına uymaktır. Yani yazdığımız isimler okunuş açısından gözü rahatsız etmemeli ve kısaltmalardan arındırılmış olmalıdır.

Oluşturulan sistemin her elemanına verilen isim özenle seçilmelidir. Sistemin elemanı bir mimari katman olabileceği gibi bir sınıfa ait bir üye de olabilir, bir veritabanı tablosu da olabilir.

Kendi tecrübelerim adına söyleyeyim, kodlama sırasında sınıflara veya sınıf üyelerine verdiğim isimler kafamda oturuncaya kadar onları birçok kez yazıp değiştirdiğim olur. İsmiyle özdeşleşmeyen nesnelere kafayı takarım desem hiç yanlış olmaz. Bu alışkanlığa nereden kapıldığımı da söyleyeyim, ta ki programlamada isimlendirme teamüllerini (Naming Conventions) okudum ve uygulamaya başladım, bu alışkanlık o gün bugündür benimle beraberdir. Aslında bu şikayet ettiğim değil sevindiğim bir durumdur. Alışkanlıklarım kodlama ile başladı, proje isimleri ile devam etti, veritabanı tablo isimleri derken dosya isimlerini bile özenle seçer hale geldim.

Programcılıkta isimlendirme meselesine gerçekten dikkat edilmesi gerekir. Çünkü isimlendirme, programcılıkta artık bir standart halini almıştır. İşin üstatları olarak bilinen birçok programcı buna dikkat ediyor. Önder yazılım firmaları ve programcıların oluşturduğu açık kaynak(open source) kodları açıp incelediğimizde bunu rahatlıkla görebiliriz. Amacının dışında bir isimlendirmenin olmadığını hemen fark edebiliriz. Düzenli ve sistemli bir çalışmanın isimlendirmelere de yansıdığını hemen anlayabiliriz. Yani isimlendirme kuralları düzenli, okunabilir ve anlaşılabilir sistemler için bir standart olmuştur.

Eğer standartlara uygun bir Framework, API v.s yazmak istiyorsak dikkat edeceğimiz noktalardan biri isimlendirmelerdir.

İlham kaynağım:
MSND Naming Conventions
Clean Code

2 Replies to “Programcılıkta isimlendirmenin önemi

  1. Hocam birbirine bağımlı bir yapım var bunlar için ayrı ayrı tablo mu tanımlamak yada tek tablo içinde parentId deyip bunları tek tabloda bağlamak daha faydalı bunun kararını veremedim yardımcı olursanız minnettar kalırım.
    Örnek olarak;
    AkademikBirimler->Fakülteler->Bölümler->Programlar gibi yada
    Menu
    SubMenu
    SubSubMenu
    SubSubSubMenu
    SubSubSubSubMenu…….
    Yukarıda ki yapılarda hep kararsız kalıyorum herbiri için tablo mu oluşturmalıyım yoksa tek tablo da işin içinden çıkmak mı mantıklı;
    Uygulama Ef Code First ile oluşturulmakta.

    • Konuyla sorunuz arasında bir alaka kuramadım. Ancak cevap olarak, tek bir tablo oluşturmanız daha isabetli olacaktır diyebilirim.

Comments are closed.