Temiz Kod (Clean Code) ve SOLID Prensiplerinin Sürdürülebilirliğe Etkisi
Yazılım Projelerinde "Spagetti Kod"dan Kurtulma Rehberi
Yazılım geliştirmede en büyük hata "çalışıyorsa dokunma" mantığıdır. Kodu bir kez yazarsınız ama aylar boyunca yüzlerce kez okursunuz. Kötü yazılmış bir kod tabanına yeni bir özellik eklemek mayın tarlasında yürümeye benzer.
Robert C. Martin'in Clean Code Kuralları
Anlamlı İsimlendirme: Değişken ve fonksiyon isimleri ne iş yaptığını açıkça anlatmalıdır. `int d;` yerine `int elapsedTimeInDays;` kullanmak koda yorum satırı yazma ihtiyacını ortadan kaldırır.
Kısa Fonksiyonlar: Bir fonksiyon sadece tek bir iş yapmalıdır (Single Responsibility). Eğer bir fonksiyon 50 satırı geçiyorsa, muhtemelen onu daha küçük, test edilebilir iki fonksiyona bölmek gerekir.
Sihirli Sayılar (Magic Numbers): Kodun ortasında aniden beliren `if (status == 4)` gibi ifadelerden kaçınılmalıdır. Bu 4 nedir? Bunun yerine Enum veya sabit değişkenler (`if (status == Status.DELETED)`) kullanılmalıdır.
SOLID Prensiplerinin Önemi
Özellikle nesne yönelimli programlamada (OOP) sınıflar arası bağımlılıkları azaltmak için SOLID ilkelerine uymak hayati öneme sahiptir. Bağımlılıkların Tersine Çevrilmesi (Dependency Inversion) sayesinde, veritabanı sınıfınızı MySQL'den PostgreSQL'e geçirirken ana iş mantığı kodlarınıza (Business Logic) hiç dokunmamanız gerekir.
Sizin projelerinizde en çok ihlal edildiğini gördüğünüz veya refactor (yeniden düzenleme) ederken en çok zorlandığınız kötü kod (Code Smell) pratiği nedir?
Sihirli sayılar (Magic numbers) ve anlamsız değişken isimleri projeleri çöplüğe çeviriyor. Clean Code standartları her ofise asılmalı.
Cevap yazmak için giriş yapmalısınız.
Giriş Yap