16 puan yazan xguru 2025-03-24 | 1 yorum | WhatsApp'ta paylaş
  • React, istemci-sunucu sınırlarını ortadan kaldıran bir full-stack frameworke doğru evriliyor
  • Next.js'in tekel konumu zayıflarken TanStack Start ve React Router rakip olarak öne çıkıyor
  • Formlar, durum yönetimi, server component'ler ve yapay zeka entegrasyonu gibi alanlarda React'in yetenekleri güçleniyor
  • React geliştiricilerinin bundan sonra full-stack ortama alışması gerekecek

React Server Components (RSC)

  • React Server Components (RSC), istemci tarafı JavaScript bundle boyutunu azaltan ve performansı optimize eden bir özellik
    • İlk duyuru: 21 Aralık 2020
    • İlk uygulama: Next.js 13'te (2022) App Router'ın tanıtılması
    • Next.js 15'te (2024) daha kararlı bir duruma ulaştı
    • React Router ve TanStack Start'ın da yakında RSC'yi benimsemesi bekleniyor
  • RSC'nin çalışma şekli
    • Sunucuda bir kez çalışır ve yalnızca render edilmiş sonuç istemciye gönderilir
    • İstemci tarafı JavaScript miktarı azalır
    • Sunucudan veritabanına ve API'lere erişilebilir (güvenlik artar)

React Server Functions (RSF)

  • React Server Actions (RSA) → RSC'den gelişen bir yapı olarak, sunucuda veriyi değiştirme ve güncelleme imkanı sunar
    • API route tanımlamadan, remote procedure call (RPC) yaklaşımıyla sunucu fonksiyonları çalıştırılır
    • use server directive'i kullanılır
  • React Server Functions (RSF)
    • Eylül 2024'te React ekibi, RSA'yı da kapsayan daha geniş bir kavram olarak RSF'yi duyurdu
    • Hem RSC'de hem de client component'lerde çalışabilir
    • Hem veri okuma hem de veri değiştirme işlemlerini kapsar
  • Next.js, TanStack Start ve React Router'da uygulanması planlanıyor

React Forms iyileştirmeleri

  • React 19'da formla ilgili özellikler büyük ölçüde geliştirildi
    • <form> etiketinin action niteliği üzerinden server action'lar doğrudan çağrılabiliyor
    • Yeni hook'lar eklendi
      • useFormStatus, useOptimistic, useActionState
    • Karmaşık form durumu yönetimi iyileştirildi
  • Mevcut kütüphanelerle uyumlu
    • React Hook Form gibi mevcut kütüphaneler kullanılmaya devam edebilir
    • React'in kendi form işleme yetenekleri daha güçlü ve esnek hale geldi

Library vs Framework (Kütüphane vs Framework)

  • React artık basit bir kütüphanenin ötesine geçerek framework karakteri kazanıyor
    • Client-side rendering (CSR), server-side rendering (SSR), static site generation (SSG) ve incremental static regeneration (ISR) destekleniyor
    • RSC ve RSF özelliklerini kullanmak için belirli bir framework'ün (ör. Next.js) kullanılması gerekiyor
  • Proje gereksinimlerine göre seçim yapmak gerekiyor
    • Basit istemci uygulamaları → React tek başına kullanılabilir
    • Sunucu tarafı özellikler gerekliyse → Next.js, TanStack Start veya React Router gibi framework'ler gerekir

React framework'leri arasındaki rekabet kızışıyor

  • Next.js hâlâ en popüler framework
  • TanStack Start ve React Router'ın 2025'te rakip olarak öne çıkma ihtimali yüksek
    • TanStack Start → TanStack Router tabanlı yeni bir framework
    • React Router → Remix'ten evrilen ve framework karakteri güçlenen bir yapı
  • Her iki framework'ün de RSC ve RSF desteği sunması bekleniyor

Full-Stack React

  • React'in sunucu merkezli özelliklerinin eklenmesi → full-stack uygulamalara doğru evrim
    • RSC ve RSF üzerinden veritabanına erişim mümkün
    • Kimlik doğrulama, yetkilendirme ve caching gibi backend altyapıları gerekiyor
    • İstemci ile sunucu arasındaki iletişim de sadeleşiyor
  • React tabanlı yapay zeka uygulamaları geliştirme olasılığı artıyor

React'in "Shadcnification" süreci

  • Shadcn UI → Tailwind CSS gibi, React'in fiili temel UI kütüphanesi haline geliyor
    • Önceden stillendirilmiş component'ler sunuyor
    • Özelleştirilebilir
  • Yeni UI yaklaşımı ihtimali
    • Güncel projelerin birbirine benzemesi gibi bir durum ortaya çıkıyor

React ve yapay zeka

  • Yapay zeka tabanlı React kod üretimi artıyor
    • Yapay zeka araçları (v0 vb.) React kodunu otomatik üretiyor
  • Yapay zeka destekli uygulama geliştirme artıyor
    • Vercel'in AI SDK'sı, LangChain vb. tarafından destekleniyor

Biome (eski adıyla Rome)

  • ESLint ve Prettier entegrasyon sorunlarını çözüyor
  • Rust tabanlı, hızlı ve tutarlı bir araç
    • Prettier'ın 20.000 dolarlık ödülünü kazandı (2023)
  • Biome'un yeni nesil React toolchain'i olarak konumlanma ihtimali yüksek

React Compiler

  • React Compiler → performans optimizasyonunu otomatikleştiren araç
    • useCallback, useMemo, memo işlemlerini otomatik olarak ele alır
    • Elle memoization yapma ihtiyacını ortadan kaldırır
    • React 19'da beta sürüm olarak sunuluyor