Kod Tekrarı, Yanlış Soyutlamalardan Daha Ucuzdur
Çoğu geliştirici DRY prensibini erkenden öğrenir. Kendini Tekrar Etme (Do Not Repeat Yourself).
Bu kural mantıklıdır. Hataları önler ve zaman kazandırır.
Ancak birçok geliştirici bu kuralı çok katı bir şekilde uygular. Her şeyi tek bir fonksiyon veya sınıf içinde birleştirmeye çalışırlar. Bu da aşırı mühendisliğe (over-engineering) yol açar.
İki farklı mantık parçasını tek bir soyutlamaya zorladığınızda sorunlar yaratırsınız. Karmaşıklık eklersiniz. Kodu okunması zor hale getirirsiniz.
Yanlış bir soyutlama, biraz kod tekrarından daha maliyetlidir.
Eğer kodu tekrarlarsanız, mantığın tam olarak nerede olduğunu bilirsiniz. Bir kısmı değiştirmeniz gerekirse, doğrudan orada değiştirirsiniz.
Eğer kötü bir soyutlama kullanırsanız, ona bağlı olan her şeyi değiştirmek zorunda kalırsınız. Mevcut görevinizle hiç ilgisi olmayan özellikleri bozma riski alırsınız.
Güvende kalmak için bu kuralları izleyin:
- Elinizdeki görev için kod yazın.
- Soyutlama yapmadan önce bir kalıbın üç kez ortaya çıkmasını bekleyin.
- Birkaç satır kod tasarrufu yapmaktan ziyade okunabilirliğe öncelik verin.
- Bir miktar kod tekrarının sağlıklı olduğunu kabul edin.
Her kod satırını mükemmel yapmaya çalışmayı bırakın. Kodunuzun değiştirilmesinin kolay olmasına odaklanın.