Search Suggest

Yazılıma Yeni Başlayanlar için Mini İsimlendirme Kılavuzu


Kodların yazım stilleri yazılımcıların bağlı oldukları ekollere göre şekillenir. Yazım stilinin önemli unsurlarından biri olan isimlendirme konusu da ekolün alaylı kısmında öğrenilen ve meslek hayatı boyunca devam edilen konulardan bir tanesidir. Bir nevi ekolünüzün mesleğiniz üzerinde bıraktığı izlerden biridir. İsimlendirme özünde metodik bir yaklaşım olmasına rağmen Türkiye bilişim literatüründe ne videolu ne de yazılı kaynaklarda pek rastladığım bir konu değil maalesef. Yeni başlayanlara mini bir Türkçe bir kılavuz olması niyetiyle bu durumu ele alalım o zaman.

Nasıl Bir İsimlendirme?

Kod özelinde inceleme yapmadan belirtmem gerekiyor ki ne üzerine isimlendirme yapıyorsanız yapın isimlendirmeleriniz anlamlı olmak zorundadır. Özetle, bir kek tarifi üzerinde çalışıyorsanız ve bu kek limonlu ise “Limonlu Kek Tarifi” şeklinde bir isimlendirme yapılması anlamlı ve yeterli olacaktır.

Dosya İsimlendirmeleri

Git gibi araçlar versiyon kontrolü konusunda programcılara avantajlar sağlasada zaman zaman klasik metotla yerelde geliştirme de yazılımcılar tarafından tercih edilebilmektedir. Bu noktada en etkili isimlendirme yöntemi dosyaları bir zaman damgasıyla beraber isimlendirmektir.

Örneğin, proje olarak tekil bir Python Script’i yazıyorsunuz ve yaptığınız değişikleri gün bazında versiyon ile isimlendirmek istiyorsunuz. Aşağıdaki gibi bir isimlendirme hem versiyon takibi yapmayı hem de geçmişe dönük zaman takibi yapmayı kolaylaştıracaktır.

  • Python Proje v+YIL+AY+GÜN
  • Python Proje v20230101.py
  • Python Proje v20230102.py

Dizin İsimlendirmeleri

Dizinler genelde barındırdıkları unsurlara göre isimlendirilirler. Problem ise genelde yedeklerin alınması gibi ile aynı isimde birden fazla dosyanın varlığı ile ortaya çıkmaktadır. Bundandır ki Finalll, Final(2), Yedekkk vb. isimlendirmeler pek çok bilgisayarda sıklıkla karşılaşılan isimlendirme kusurlarındandır. Bu noktada dosyalarda da kullanıldığı gibi dizinlerin de zaman damgası ile isimlendirilmesi işleri kolaylaştıracak yöntemlerden bir tanesidir.

  • Blog Yazılarım Mayıs Arşivi
  • Blog Yazılarım v20230101

Kod İçerisinde İsimlendirme

Geldik bu yazının asıl yazım amacına. Kod içerisinde isimlendirmeye ihtiyaç duyacağınız yerler fonksiyonlar, değişkenler ve sabitlerdir. İç not: Bazı programlama dilleri, kütüphanelerin kullanımı gibi yerlerde custom isimlendirmeyle kısaltmalara izin verebilmektir. Bu yazıda bunun gibi ince nüanslar ve ek özelliklerin dışında sadece fonksiyonlar, değişkenler ve sabitlerin isimlendirmesinden bahsedilecektir.

Programlama dilleri isimlendirmeler sırasında kendilerine özel kurallar barındırabilirler. Sizler bunları o programlama dilinin documentlerinden rahatlıkla gözlemleyebilirsiniz. Örneğin bir programala dili _ ile isimlendirmeyi legal kabul etmezken bir diğeri edebilmektedir. Ben ise bu yazıda daha çok genel geçer kabuller ile isimlendirme standartlarını göstereceğim. Bu kabullerden bazıları;

  • Sistem için ayrılmış isimlendirmeler kullanılamaktadır. ("math")
  • Sayı ile başlayan bir isimlendirme kullanılamamaktadır. ("2parca")
  • Türkçe harf barındıran bir isimlendirme yapılamamaktadır. ("taksiücreti")
  • İsimlendirme yapılırken boşluk kullanılamamktadır. ("taksi ücreti")

 Genel geçer kuralları gördüğümüze göre şimdi isimlendirme standartlarına bir bakalım.

Tablo 1. Yaygın isimlendirme standartları

İsimlendirme Metodu

Örnek

Yayın Kullanım Dili

Camel Casing

saatlikUcret

soyAdi

Java, C#

Pascal Casing

SaatlikUcret

SoyAdi

Visual Basic

Hungarian Notation

numSaatlikUcret

soyAdi

C

Snake Casing

saatlik­_ucret

soy_adi

C, C++, Python, Ruby

Mixed case with underscore

Saatlik_Ucret

Soy_Adi

Ada

Kebob case

saatlik-ucret

soy-adi

Lips, COBOL

Yukarıdaki tabloda yaygın isimlendirme standartları ve yaygın olarak kullanıldıkları programlama dilleri verilmiştir. Programlama dilleri aynı zamanda birer ekolü temsil etmektedir. Buradaki ekol programlama içindeki yapı ve parçalara yaklaşımı ifade etmektedir. Bu yüzden bir programlama dilinde fonksiyon diye gördüğünüz yapıyı diğer programlama dilinde modül bir değerinde ise metot olarak görmeniz mümkündür.  Bizim burada yapacağımız ise bu standartları kullanarak kendi isimlendirme çerçevimizi oluşturmak olacak. Bu yaklaşım bize kod okunabilirliği, kod düzenleme ve geliştirme gibi noktalarda faydalar sağlayacaktır.

Bunu bir taksimetre kodu üzerinde kategorik olarak ele alacak olursak;

  • Global Sabitler: BASLANGIC_UCRETI
  • Local Sabitler: km_basi_ucret
  • Fonskiyonlar: yolUcretHesapla()
  • Değişkenler: varisYeri, anlikKonum
  • Local Değişkenler: toplam-yol-ucreti

Kaynak:
Ferrell, J., & Farrell, J. (2010). Programming logic and design: Comprehensive (6th ed.). Cengage Learning.

Geliştirici, makine mühendisi.

Yorum Gönder