Albatros

Bilişim Kooperatifi Girişimi

Bir önceki  yazımızda temiz kodun öneminden bahsetmiştik. Artık temiz kod pratiklerinden bahsedebiliriz.

İlk pratik en temel ve en önemlilerinden biri olan naming convention yani isimlendirme düzeni. Metotlara, fonksiyonlara,  değişkenlere, sınıflara, parametrelere düzenli olarak isimler veririz. Kodlamanın önemli parçalarından biri olduğunu, bir türlü güzel bir isim bulamadığımızda farkederiz. Bazen bir isimlendirme bize ne yaptığı veya hangi bilgiyi  tuttuğu  konusunda çok güzel fikir verirken, bazen anlamak için dakikalarca kodu takip etmek veya debug etmek zorunda kalırız.

Örneğin yukarıdaki kodumuz basit bir binary search algoritmasını içermekte. Hatırlamak isteyenler için; binary search sıralanmış numerik dizilerde arama yapmak için kullanılan optimize bir algoritmadır. Baştan sona taramak yerine, sürekli ikiye bölerek ve ortadaki sayıyı aranan sayı ile karşılaştırarak arama gerçekleşir.

Bu kodu, sadece bir kaç basit isimlendirme dokunuşu yaparak daha anlaşılır hala getirebiliriz. Örneğin metodun aldığı parametre ismi “key” bir çok anlama gelebilir. Bunun yerine numberToSearch gibi daha specific bir isim verilebilir. Benzer şekilde lo yerine lowIndex, hi yerine ise highIndex isimleri verilerek arama mantığı daha kolay çözülebilir.

Daha kapsamlı ve karmaşık kodlarda isimlendirmeler çok daha önemlidir. Calculate() diye bir metot gördüğünüzde bu neyi hesaplıyor diye sorarsınız. Ama ismi calculateTax() olsa metodun ne yaptığı hakkında daha iyi bir fikir edinirsiniz. Bununla birlikte isim hikaye anlatır uzunlukta da olmamalıdır. Örneğin checkUserClickedButtonToSeeIfFormFilledCorrectlyAndCheckDatabaseToPersistIt() gibi bir isim uygun olmayacaktır. Metotun ne yaptığını belirtmeye çalışırken dengeyi kaçırmamak gerekir.

İsimlendirme ile ilgili diğer bir nokta ise, tipini/özelliğini anlamamıza yardımcı olan prefix(ön) veya postfix(arka) eklerin kullanımıdır. Bu geliştiriciler arasında ortak bir dil ve standard oluşturur. Örneğin C++ ta “x_” ile başlayan değişkenler genelde constant değişkenlerdir. Java’da ise büyük harfler kullanılarak yapılır. Yine Java’da metot ve değişken isimleri küçük harf ile başlar ve sonraki kelimeler büyük harf ile başlar. Sınıf isimleri ise her zaman büyük harf ile başlar. Bazı kurumlarda yazılım ekipleri bunları dökümante eder ve geliştiriciler buna uymaya çalışır.