Kural
Açıklayıcı değişken adları kullanın.
Çok kısa değişken adları kodu anlaşılmaz kılar.
Desteklenen diller: 45+Giriş
Tek harfli veya şifreli değişken adları, okuyucuların kodu bir bakışta anlamak yerine bağlamdan anlam çıkarmaya zorlar. Şöyle bir değişken d tarihi, süreyi, mesafeyi veya veriyi temsil ediyor olabilir; bu da fonksiyon boyunca amacını takip etmek için zihinsel çaba gerektirir. Şunun gibi açıklayıcı adlar userCreatedDate veya requestDuration bilişsel yük oluşturmadan niyetin hemen anlaşılmasını sağlar.
Neden önemli?
Kodun sürdürülebilirliği: Net olmayan değişken adları kavrayışı yavaşlatır. Geliştiriciler gerçek mantığa odaklanmak yerine x, tmp veya val ifadelerinin neyi temsil ettiğini anlamaya çalışarak zaman harcar. Kötü adlandırma ayrıca kodu genişletmeyi zorlaştırır, çünkü yeni mantığın nereye sığması gerektiği veya mevcut değerlerin birbirleriyle nasıl ilişkili olduğu belirsizdir. Üstelik belirsiz adlar kod tabanını aranamaz hale getirir, çünkü tmp veya val araması anlamlı sonuçlar vermez. Bu durum, aylar sonra kodun başına dönüldüğünde veya yeni ekip üyeleri katıldığında katlanarak artar.
Hata oluşumu: Belirsiz adlar, yanlış değişkeni kullanma olasılığını artırır. Birden fazla değişken benzer şifreli adlara sahip olduğunda (d1, d2, d3), geliştiriciler yanlış olanı kullanabilir ve bu adlar hiçbir anlamsal ipucu barındırmadığı için kod incelemesinden (code review) geçen fark edilmez hatalara yol açabilir.
Kod örnekleri
❌ Kural dışı:
function calcAmt(u, qty) {
const p = u.prc;
const d = u.disc || 0;
const t = p * qty;
const a = t - (t * d);
const tx = a * 0.08;
return a + tx;
}
Neden yanıltıcı: Gibi değişken adları u, p, d, t, amaçları hakkında hiçbir şey söylemez. Okuyucuların p ifadesinin fiyat, d ifadesinin indirim, t ifadesinin ara toplam ve a ifadesinin vergiden önceki tutar olduğunu anlamak için hesaplama mantığını incelemesi gerekir.
✅ Kurallara uygun:
function calculateOrderAmount(product, quantity) {
const price = product.price;
const discount = product.discount || 0;
const subtotal = price * quantity;
const amountAfterDiscount = subtotal - (subtotal * discount);
const tax = amountAfterDiscount * 0.08;
return amountAfterDiscount + tax;
}
Neden önemli: Her değişken adı, ne içerdiğini açıkça açıklar. amountAfterDiscount hesaplama durumunu net bir şekilde belirtir, tax anlamı açıktır ve product ve quantity fonksiyon gövdesini okumaya gerek kalmadan girdilerini ortaya koyar.
Sonuç
Bağlama ihtiyaç duymadan niyeti belli eden isimler kullanın. Kısıtlılıktan ziyade netliği tercih edin. İfadesindeki totalPrice ile tp arasındaki fazladan karakterler çalışma zamanında maliyet yaratmaz ancak anlama süresinden önemli ölçüde tasarruf sağlar.

