Erken Optimizasyon (Premature Optimization)
"Erken optimizasyon her türlü kötülüğün anasıdır." - Donald Knuth
Açıklama:
Henüz projenin/fonksiyonun bir performans sorunu yaratıp yaratmayacağını bilmeden veya ölçüm yapmadan (profiling) performansı artırmak için kodu inanılmaz karmaşık hale getirme sendromudur.
Gerçek Hayattan Örnek:
Bir startup, günde 5 ziyaretçi almasına rağmen kodlarını mikro-milisaniye seviyesinde optimize etmeye çalışıyor, basit bir veritabanı sorgusu yerine araya Redis Cache, Kafka kuyrukları ve karmaşık algoritmalar ekliyor. Kod okunamaz hale geliyor ve ürünün çıkışı 3 ay gecikiyor.
Nasıl Uygulanır?
- Önce kodun DOĞRU çalışmasını sağlayın. (Make it work)
- Sonra kodu GÜZEL ve OKUNABİLİR hale getirin. (Make it right)
- Eğer YAVAŞ çalışıyorsa, nerenin yavaş olduğunu ÖLÇÜN ve sadece orayı HIZLANDIRIN. (Make it fast)