Sobes.tech
Junior

React'te render etmenin temel özelliği nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

React'te render etmenin temel özelliği, Virtual DOM ve Reconciliation algoritmasının kullanılmasıdır, böylece kullanıcı arayüzü verimli bir şekilde güncellenir.

Virtual DOM, gerçek DOM'un hafif bir temsilidir. React, şu anki kullanıcı arayüzü durumunu temsil eden Virtual DOM öğeleri ağacını oluşturur.

Bir bileşenin durumu veya props değiştiğinde, React yeni bir Virtual DOM ağacı oluşturur. Daha sonra, bu yeni ağacı öncekiyle karşılaştırır ("diffing" olarak adlandırılan süreç) ve Reconciliation algoritmasını kullanır.

Reconciliation algoritması, gerçek DOM'u yeni Virtual DOM ile senkronize etmek için gereken minimum değişiklikleri belirler. Tüm DOM'u yeniden çizmek yerine, React gerçekten değişen kısımları günceller.

Bu yaklaşım, yavaş gerçek DOM ile doğrudan manipülasyonları en aza indirerek performansı önemli ölçüde artırır.

İşlem örneği:

  1. Başlangıç renderı: React, Virtual DOM'u oluşturur ve gerçek DOM'u inşa eder.
  2. Durum değişikliği: Bileşen yeni veriler veya props alır.
  3. Yeni Virtual DOM oluşturma: React yeni bir Virtual DOM ağacı oluşturur.
  4. Diffing: Yeni Virtual DOM ile önceki karşılaştırılır.
  5. Değişikliklerin uygulanması: React, yalnızca değişen düğümleri gerçek DOM'da günceller.
// Durumlu bir bileşen örneği
function Counter() {
  const [count, setCount] = React.useState(0);

  // Bu fonksiyon, durumu değiştirerek yeniden render edilmesine neden olur
  function handleClick() {
    setCount(count + 1);
  }

  return (
    // Butona tıklandığında handleClick çağrılır
    <button onClick={handleClick}>
      {count} kere tıklandı
    </button>
  );
}

Bu örnekte, butona her tıklandığında setCount durumu günceller. React, güncellenmiş count değeriyle yeni bir Virtual DOM ağacı oluşturur. Reconciliation algoritması, yalnızca düğümdeki metin değiştiğini tespit eder ve yalnızca bunu gerçek DOM'da günceller.