Tue Feb 11 2025
React Server Components, React uygulamalarında sunucu tarafında bileşenlerin render edilmesini sağlayan yeni bir özelliktir. Bu özellik, özellikle büyük ölçekli uygulamalarda performansı artırmak ve kullanıcı deneyimini iyileştirmek için tasarlanmıştır.
React Server Components, geleneksel SSR'den farklıdır. SSR'de tüm uygulama sunucuda render edilir ve istemciye gönderilir. RSC ise, sadece belirli bileşenlerin sunucuda render edilmesine olanak tanır.
RSC, istemci tarafında render edilen bileşenlerle birlikte çalışabilir. Bu, hibrit bir yaklaşım sunar ve uygulamanın daha verimli çalışmasını sağlar.
RSC, sunucu tarafında veri çekme işlemlerini daha verimli hale getirir. Veritabanı sorguları veya API çağrıları gibi işlemler sunucuda yapılır ve sadece gerekli veriler istemciye gönderilir.
RSC, istemciye gönderilen JavaScript paket boyutunu azaltır. Sunucuda render edilen bileşenler, istemci tarafında çalıştırılması gereken kod miktarını azaltır.
React Server Components, sunucu ve istemci arasında bir protokol kullanır. Bu protokol, sunucuda render edilen bileşenlerin istemciye nasıl gönderileceğini ve istemci tarafında nasıl entegre edileceğini belirler.
Aşağıda, React Server Components kullanarak basit bir örnek gösterilmiştir. Bu örnekte, sunucuda bir liste render edilir ve istemci tarafında gösterilir.
// ServerComponent.js
import db from "imaginary-database";
export default function ServerComponent() {
const data = db.query("SELECT * FROM products");
return (
<div>
<h1>Ürün Listesi</h1>
<ul>
{data.map((product) => (
<li key={product.id}>{product.name}</li>
))}
</ul>
</div>
);
}
// ClientComponent.js
"use client";
import { useState } from "react";
export default function ClientComponent() {
const [count, setCount] = useState(0);
return (
<div>
<p>Sayac: {count}</p>
<button onClick={() => setCount(count + 1)}>Arttır</button>
</div>
);
}
// App.js
import ServerComponent from "./ServerComponent";
import ClientComponent from "./ClientComponent";
export default function App() {
return (
<div>
<ServerComponent />
<ClientComponent />
</div>
);
}
React Server Components, modern React uygulamalarında performans ve verimlilik açısından önemli bir adımdır. Sunucu tarafında render edilen bileşenler, istemci tarafında daha az işlem yapılmasını sağlar ve uygulamanın daha hızlı çalışmasına yardımcı olur. Ancak, bu özelliği kullanırken dikkatli olmak ve projenin ihtiyaçlarını iyi analiz etmek önemlidir.
Umarım bu rehber, React Server Components hakkında daha iyi bir anlayış kazanmanıza yardımcı olur! Herhangi bir sorunuz varsa, bana sormaktan çekinmeyin. 😊
All rights reserved