CodeBlanks Logo Icon CodeBlanks

Optimization

Yaygın performans optimizasyonlarını öğrenirsin.

Optimization teknikleri

Node.js'te performans optimizasyonu birkaç temel yaklaşımla yapılır. Birincisi: ölç. Optimizasyondan önce her zaman profil al; tahmin yerine veri kullan. İkincisi: darboğazı kaldır. CPU yoğun işi işçi iş parçacığına taşı, I/O'yu eşzamansız yap.

Üçüncüsü: önbelleğe al. Tekrarlanan hesaplamaları önbellekte tut. Dördüncüsü: topla. Küçük işlemleri toplu (batch) yap; örneğin veritabanına tek tek değil toplu yaz.

Döngü optimizasyonu

Döngü içinde aynı hesaplamayı tekrarlamak pahalıdır. Döngü dışına taşıyarak (loop-invariant code motion) hızlanırsın. Örneğin arr.length'i döngü içinde her seferinde okumak yerine bir değişkene ata.

Ayrıca for döngüsü forEach'ten genelde daha hızlıdır; ama fark genelde küçüktür. Önce okunaklılığı seç, sonra ölç; yalnızca gerçek kazanç varsa optimizasyon yap. Erken optimizasyon kötü bir alışkanlıktır.

Uygulama Döngü toplamını yaz

0'dan 4'e kadar (4 dahil) bir for döngüsü yaz. Her adımda sum'a i ekle. Sonunda sum'u yaz.

Başlangıç kodu

index.js
// sum değişkenini sıfırla

// 0'dan 4'e kadar döngü

// sum'u yaz

Örnek çözüm

index.js
let sum = 0;
for (let i = 0; i < 5; i++) { sum += i; }
console.log(sum);

Beklenen çıktı

10

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Döngü başlangıcını tamamla

Soru
for (let i = ____; i < 5; i++)
Cevap
for (let i = 0; i < 5; i++)

Açıklama: Döngü 0'dan başlar ve 5'e kadar gider.

2 Parçayı rolüne eşle

Kavram Anlamı
loops Döngü
cache Önbellek
async Eşzamansız
batch Toplu iş

3 En etkili optimizasyon yaklaşımı nedir?

  • Ölçüp sonra iyileştirmek Doğru cevap
  • Rastgele değiştirmek
  • Tahmin etmek
  • Kodu kısaltmak

Açıklama: Ölçmek, optimizasyonun temelidir.

İleri seviye bölümündeki tüm dersler