Skip to main content
Yazılım Geliştirme

Clean Code Nedir? Temiz Kod Yazma Prensipleri

Mart 15, 2026 3 dk okuma 11 views Raw
Temiz ve düzenli kod yazma çalışma alanı
İçindekiler

Clean Code (Temiz Kod) Nedir?

Clean Code, Robert C. Martin'in aynı adlı kitabıyla popülerleşen bir yazılım geliştirme felsefesidir. Temiz kod, okunması, anlaşılması ve bakımı kolay olan koddur. İyi yazılmış kod, yalnızca bilgisayar tarafından değil, diğer geliştiriciler tarafından da kolayca anlaşılabilmelidir. Martin'in deyimiyle: "Temiz kod, başka bir geliştirici tarafından okunabilir ve geliştirilebilir koddur."

Neden Temiz Kod Yazmalıyız?

Yazılım projelerinde kodun okunma süresi, yazılma süresinden çok daha fazladır. Araştırmalar, geliştiricilerin zamanlarının yaklaşık yüzde seksenini mevcut kodu okumaya ve anlamaya harcadığını göstermektedir. Bu nedenle temiz kod yazmanın faydaları çok büyüktür:

  • Bakım kolaylığı: Hataları bulmak ve düzeltmek daha hızlı olur
  • Ekip verimliliği: Yeni ekip üyeleri projeye daha hızlı adapte olur
  • Daha az hata: Anlaşılır kod, daha az bug üretir
  • Teknik borç azaltma: Uzun vadede bakım maliyetlerini düşürür
  • Ölçeklenebilirlik: Yeni özellikler eklemek kolaylaşır

Temiz Kod Prensipleri

1. Anlamlı İsimlendirme

Değişken, fonksiyon ve sınıf isimleri, ne yaptıklarını açıkça ifade etmelidir. Kısaltmalardan ve belirsiz isimlerden kaçınılmalıdır.

İyi isim, yorum ihtiyacını ortadan kaldırır. Eğer bir isme yorum eklemeniz gerekiyorsa, ismi değiştirin.

2. Küçük Fonksiyonlar

Fonksiyonlar küçük ve tek bir iş yapmalıdır. Her fonksiyon tek bir soyutlama seviyesinde çalışmalı ve yan etkilerden kaçınmalıdır. İdeal bir fonksiyon yirmi satırı geçmemelidir.

3. DRY (Don't Repeat Yourself)

Kod tekrarından kaçınılmalıdır. Aynı mantığı birden fazla yerde yazmak yerine, ortak bir fonksiyon veya sınıf oluşturulmalıdır. Tekrar eden kod, değişiklik yapıldığında tüm kopyaların güncellenmesini gerektirir ve hata riskini artırır.

4. KISS (Keep It Simple, Stupid)

Basitlik, iyi yazılımın temel taşıdır. Gereksiz karmaşıklıktan kaçının ve en basit çözümü tercih edin. Karmaşık bir çözüm genellikle bakımı zor ve hatalara açık olur.

5. Yorum Yazma Sanatı

Temiz kodda yorumlar minimumda tutulmalıdır. Kod kendini açıklamalıdır. Ancak bazı durumlarda yorumlar gerekli olabilir:

  • Karmaşık iş mantığını açıklamak için
  • Yasal veya lisans bilgileri için
  • Neden belirli bir yaklaşımın tercih edildiğini belirtmek için
  • TODO ve uyarı notları için

Kod Kokuları (Code Smells)

Kod kokuları, kodda potansiyel sorunları işaret eden belirtilerdir. Yaygın kod kokuları şunlardır:

Kod KokusuAçıklama
Uzun fonksiyonlarÇok fazla iş yapan fonksiyonlar
Büyük sınıflarÇok fazla sorumluluk taşıyan sınıflar
Çok fazla parametreÜçten fazla parametre alan fonksiyonlar
Kod tekrarıAynı mantığın farklı yerlerde tekrarlanması
Ölü kodKullanılmayan kod blokları
Sihirli sayılarAçıklama olmadan kullanılan sabit değerler

Refactoring (Yeniden Yapılandırma)

Refactoring, kodun davranışını değiştirmeden iç yapısını iyileştirme sürecidir. Temiz kod yazmanın önemli bir parçası olan refactoring teknikleri şunlardır:

  1. Fonksiyon çıkarma (Extract Method): Uzun fonksiyonları küçük parçalara ayırma
  2. Değişken çıkarma (Extract Variable): Karmaşık ifadeleri açıklayıcı değişkenlere atama
  3. Sınıf çıkarma (Extract Class): Büyük sınıfları daha küçük, odaklı sınıflara bölme
  4. İsimlendirme iyileştirme: Daha açıklayıcı isimler kullanma
  5. Koşulları sadeleştirme: Karmaşık if-else yapılarını basitleştirme

Test ile Temiz Kod

Temiz kod ve test yazma birbirini tamamlar. Birim testleri, refactoring sırasında kodun doğruluğunu garanti altına alır. TDD (Test-Driven Development) yaklaşımı, temiz kod yazmayı doğal hale getirir.

Sonuç

Temiz kod yazmak, bir beceri olmanın ötesinde bir disiplindir. Ekolsoft olarak projelerimizde temiz kod prensiplerine bağlı kalarak sürdürülebilir ve kaliteli yazılımlar geliştiriyoruz. Her geliştirici, kod yazarken "Bu kodu altı ay sonra okuyan biri anlayabilir mi?" sorusunu kendine sormalıdır. Temiz kod yazmaya yatırım yapmak, uzun vadede hem bireysel hem de ekip verimliliğini büyük ölçüde artırır.

Bu yazıyı paylaş