Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi
React, kullanıcı arayüzleri oluşturmak için kullanılan, bileşen tabanlı bir JavaScript kütüphanesidir. Özellikle etkileşimli web uygulamalarında ekranı küçük ve yeniden kullanılabilir parçalara ayırmayı sağlar. Bir butona tıklanınca sayaç artırmak, form verisini ekranda göstermek veya kullanıcı oturumuna göre farklı içerik sunmak gibi değişiklikler, doğrudan çok sayıda DOM işlemi yazmak yerine bileşen durumu değiştirilerek yönetilir.

React tek başına bir sunucu, veritabanı veya yönlendirme sistemi değildir. Arayüz katmanını oluşturur. İhtiyaca göre yönlendirme, veri çekme, form yönetimi ve stil çözümü gibi konularda ek kütüphaneler veya uygulamanın kendi JavaScript kodu kullanılabilir.

React nasıl çalışır?​


React uygulaması, arayüzü bileşen adı verilen fonksiyonlara böler. Bir bileşen genellikle kendisine verilen props değerlerini ve kendi state durumunu kullanarak JSX döndürür. JSX, JavaScript içinde HTML’e benzeyen bir yazım biçimidir; normal projelerde derleme sırasında JavaScript’e dönüştürülür. React’i JSX kullanmadan createElement gibi API’lerle de kullanabilirsiniz.

Bileşenin kullandığı veri değiştiğinde React, bileşeni yeniden değerlendirir ve ekranda değişmesi gereken kısmı günceller. Geliştirici çoğu durumda her DOM düğümünü elle bulup değiştirmez; arayüzün hangi veriye karşılık geldiğini tanımlar. Bu yaklaşım, özellikle çok sayıda etkileşimli bileşen içeren ekranlarda kodun izlenmesini kolaylaştırır.

Props ve state farkı​


Bir bileşenin davranışını anlamak için verinin nereden geldiğini ayırmak önemlidir:

KavramKaynakDeğiştirme yöntemiTipik kullanım
PropsÜst bileşenAlt bileşen doğrudan değiştirmezBaşlık, kullanıcı adı, ayar
StateBileşenin kendi durumuState güncelleme fonksiyonuSayaç, açık/kapalı durum, form alanı

Somut React örneği​


Aşağıdaki bileşen, başlangıçta sıfır olan bir sayacı ekrana çıkarır. Butona basıldığında state güncellenir ve yeni değer yeniden gösterilir:

Kod:
import { useState } from 'react';

export default function Counter() {
  const [count, setCount] = useState(0);

  return (
    <section>
      <p>Sayaç: {count}</p>
      <button type="button" onClick={() => setCount(count + 1)}>
        Artır
      </button>
    </section>
  );
}

Bu bileşenin çalışması için bir React projesindeki uygun JavaScript veya JSX dosyasına eklenip uygulamanın bileşen ağacında kullanılması gerekir. Başarılı sonuçta ekranda Sayaç: 0 ve Artır düğmesi görünür; düğmeye her basışta sayı artar. Ekran değişmiyorsa önce bileşenin gerçekten sayfaya eklenip eklenmediği, useState içe aktarmasının doğru olduğu ve olay işleyicisinin fonksiyon olarak verildiği kontrol edilmelidir.

Örnekte count mevcut değeri, setCount ise yeni değeri bildiren güncelleme fonksiyonudur. Bu örnekte count const ile tanımlandığından ona yeniden atamak JavaScript hatasıdır. Bir state nesnesinin içini doğrudan değiştirmek de React’e doğru güncelleme sinyalini sağlamaz. Güncelleme fonksiyonu çağrılmalıdır.

React bileşenleri sunucuda HTML ön üretimi veya uygun framework’lerde sunucu bileşenleri gibi akışlarda da çalışabilir. Bu, React’in tek başına veritabanı, dağıtım ve bütün uygulama altyapısını sağladığı anlamına gelmez. Kullanılan renderer ve framework’ün sorumluluklarını ayrı değerlendirin.

React ne zaman tercih edilir?​


Sayfa; filtreler, canlı formlar, paneller, sepetler veya oturum durumları gibi sık etkileşimler içeriyorsa bileşen yaklaşımı yararlı olur. Aynı arayüz parçasını farklı ekranlarda kullanmak istiyorsanız bileşenlere ayırmak bakım ve tutarlılık sağlar.

Buna karşılık yalnızca birkaç metin ve bağlantıdan oluşan, etkileşimi çok az olan basit bir sayfa için React ek bir yapılandırma ve öğrenme maliyeti getirebilir. React seçmeden önce uygulamanın bileşenlere ayrılma ihtiyacını, veri akışını ve ekipteki JavaScript bilgisini değerlendirin.

Sık yapılan hatalar​


  • State'i doğrudan değiştirmek: Güncellemeyi React'e bildirmek için setter fonksiyonunu kullanın.
  • Her şeyi tek bileşene koymak: Büyük bileşenleri anlamlı sorumluluklara ayırın; ancak her satır için ayrı bileşen üretmeyin.
  • Props ile state'i karıştırmak: Üst bileşenden gelen değerleri alt bileşende doğrudan değiştirmeye çalışmayın.
  • Liste öğelerine kararlı anahtar vermemek: map ile üretilen öğelere, öğe sırasına körü körüne bağlı olmayan uygun bir key değeri verin.
  • React'i backend sanmak: Veri saklama, kimlik doğrulama ve sunucu işlemleri için ayrıca uygun bir backend çözümü gerekir.

Kaynaklar​



Sık sorulan sorular​


React ile normal JavaScript birlikte kullanılabilir mi?​


Evet. React bileşenleri JavaScript fonksiyonlarıdır; hesaplama, koşul, dizi işlemleri ve yardımcı fonksiyonlar normal JavaScript ile yazılabilir. React yalnızca arayüzün nasıl üretileceği ve güncelleneceği kısmını düzenler.

React öğrenmek için önce ne bilinmeli?​


Değişkenler, fonksiyonlar, diziler, nesneler, koşullar, map ve temel DOM olayları bilinmelidir. JSX, props ve state konularına geçmeden önce modern JavaScript'in bu temellerini uygulayabilmek öğrenme sürecini kolaylaştırır.

React mobil uygulama geliştirmek için de kullanılır mı?​


React’in bileşen modeli farklı hedeflerde kullanılabilir. React DOM web tarayıcısı öğelerini, React Native ise platformun yerel bileşenlerini kullanır. Mantığın bir kısmı paylaşılabilse de HTML/CSS kullanan her web bileşeni doğrudan yerel mobil arayüze dönüşmez.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.