Temiz Kod Nedir?
İngilizce: Clean Code
Yayın: · Son güncelleme:
Temiz Kod Nedir? Kısaca
Temiz kod (clean code), başka bir geliştiricinin kolayca okuyup anlayabileceği, değiştirebileceği ve test edebileceği biçimde yazılmış koddur. Anlamlı isimler, küçük ve tek işe odaklı fonksiyonlar ve gereksiz karmaşıklıktan uzak bir yapı temel özellikleridir.

Temiz kod nedir?
Temiz kod, makine için değil insan için yazılmış koddur. Bilgisayar her türlü kodu çalıştırır; asıl zorluk, altı ay sonra o kodu okuyan kişinin ne olduğunu anlayabilmesidir. Bu kişi çoğu zaman siz olursunuz.
Kavram, Robert C. Martin'in "Clean Code" kitabıyla yaygınlaştı. Ama özü basittir: kod, ne yaptığını kendisi anlatmalıdır.
Temel ilkeler
Birkaç kural günlük işte büyük fark yaratır.
İsimler anlam taşısın. d yerine gecenGunSayisi, liste2 yerine aktifMusteriler yazın. Fonksiyonlar küçük olsun ve tek bir iş yapsın; "ve" kelimesi olmadan anlatamadığınız bir fonksiyon muhtemelen iki iş yapıyordur. Tekrar eden kodu bir yerde toplayın, bu DRY prensibi olarak anılır.
Küçük bir dönüşüm örneği:
if (k.y > 17 && k.u == 1) { ... }
Bu satır, if (kullanici.resitMi() && kullanici.uyelikAktifMi()) hâline getirildiğinde yorum satırına gerek kalmadan okunur. Davranış aynıdır, anlaşılırlık değişir.
Nereden başlamalı?
Bir projede her şeyi bir anda temizlemeye çalışmayın. "İzci kuralı" olarak bilinen yaklaşımı benimseyin: bir dosyaya dokunduğunuzda onu bulduğunuzdan biraz daha temiz bırakın.
Ekip içinde ortak kurallar belirleyin ve bir linter ile otomatik kontrol edin. Kod incelemelerinde okunabilirliği de konuşun. Temiz kodun amacı mükemmellik değil, bir sonraki değişikliği kolaylaştırmaktır.
Sıkça Sorulan Sorular
Temiz kod yazmak işi yavaşlatır mı?
İlk yazımda biraz daha düşünmek gerekir. Ancak kod okunduğu ve değiştirildiği için, yazım süresinin çok üstünde bir süre okumaya harcanır. Temiz kod bu toplam süreyi azaltır.
Clean Code kitabını okumak şart mı?
Şart değildir ama yararlı bir kaynaktır. Bazı önerileri tartışmaya açıktır, bu yüzden kuralları körü körüne uygulamak yerine ekibinizin ihtiyaçlarına göre uyarlamak daha sağlıklıdır.