Sitemize hoşgeldiniz!  ::  Son eklenen yazı: Git’te “master” mı “main” mi? Bir kelimenin ardındaki hikâye  ::  Toplam 63 yazı  ::  Görüş ve önerileriniz için iletişim sayfasını kullanabilirsiniz.
» Menü
Anasayfa
Hakkımda
İletişim
» Kategoriler
› nostalji (8)
› laravel (7)
› php (5)
› web (3)
› agile (3)
› go (2)
› golang (2)
› api (2)
› redis (2)
› git (2)
› github (2)
› model (1)
» Arşiv
› Ekim 2025 (2)
› Temmuz 2025 (1)
› Nisan 2025 (3)
› Mart 2025 (5)
› Şubat 2025 (1)
› Ocak 2025 (43)
› Haziran 2011 (1)
› Kasım 2009 (1)
› Temmuz 2009 (1)
› Temmuz 2007 (1)
› Ocak 2007 (1)
› Kasım 2006 (1)
› Ekim 2006 (1)
› Ağustos 2006 (1)
Anasayfa » Yazılar » ReactJS Rehberi
ReactJS Rehberi
Yazan: Atilla Mutlu | Tarih: 22.04.2025 21:49

ReactJS Rehberi: Modern Frontend Geliştirme Yol Haritası


📚 ReactJS Nedir?

ReactJS, Facebook tarafından geliştirilen ve bakımı yapılan bir kullanıcı ara yüzü kütüphanesidir. Özellikle tek sayfa uygulamalar (SPA) oluşturmak için kullanılır. Bileşen bazlı (component-based) bir yaklaşımla çalışır ve sanal DOM kullanarak performansı optimize eder.


📊 React vs Vue.js vs Angular vs Diğerleri

Özellik React Vue.js Angular Svelte Next.js (React tabanlı)
Öğrenme Eğ risi Orta Kolay Zor Kolay Orta
Yapı Kütüphane Framework/Kütüphane Tam Framework Compiler Bazlı Framework
Performans 🌟🌟🌟 🌟🌟🌟 🌟🌟 🌟🌟🌟🌟 🌟🌟🌟🌟
Destek ve Topluluk 👍👍👍 👍👍 👍👍👍 👍👍 👍👍👍
Kurumsal Kullanım Çok Yüksek Orta Çok Yüksek Az Yüksek
Şablon Dili JSX HTML Tabanlı HTML + TypeScript HTML Benzeri JSX

🛠️ ReactJS Ekosisteminde Temel Araçlar

1. Axios

  • HTTP istekleri yapmak için kullanılan bir üçüncü taraf kütüphanedir.
  • Fetch'e alternatif, promise tabanlı.
  • Otomatik JSON çevirimi, hata yönetimi kolay.

2. Fetch API

  • Tarayıcının native HTTP istek yapma yöntemidir.
  • Axios'a göre daha "ham" kullanılır.
  • Basit kullanımlar için yeterli, ama ileri düzey error handling Axios ile daha rahattır.

3. Zustand

  • Çok hafif, basit ama güçlü bir global state management çözümü.
  • Redux'a alternatif.
  • Hooks yapısında kullanılır, boilerplate kodu yok denecek kadar az.

4. TypeScript (TS) ve TSX

  • TypeScript: JavaScript'in tip güvenliği sağlayan sürümü.
  • .ts dosyaları: Sadece TypeScript kodu içerir.
  • .tsx dosyaları: TypeScript + JSX bileşenlerini içeren dosyalar.
  • Daha az hata, daha iyi IDE desteği, daha iyi refactoring.

5. JavaScript (JS)

  • ReactJS, temelde vanilla JavaScript + JSX kullanır.
  • Ancak projeler büyüdüğünde TypeScript'e geçmek best practice kabul edilir.

🔄 State vs Global State Nedir?

✨ State:

  • Bir bileşenin kendi içinde tuttuğu veri.
  • Sadece o bileşen etkilenir.
const [count, setCount] = useState(0);

📈 Global State:

  • Tüm uygulama genelinde erişilebilen veri.
  • Birden fazla bileşenin erişmesi gerekiyorsa kullanılır.
  • Örnek: Kullanıcı bilgisi, tema ayarı.

Yönetim Araçları: Context API, Redux, Zustand, Recoil.


🗺️ React Router

  • React uygulamaları içinde sayfalar arası geçiş sağlar.
  • Tek sayfa uygulamada URL değiştirir ama tam sayfa yenilemesi olmaz.
  • Nested routes, dynamic routes, protected routes gibi güçlü özellikleri vardır.
import { BrowserRouter, Routes, Route } from 'react-router-dom';

<BrowserRouter>
  <Routes>
    <Route path="/" element={<Home />} />
    <Route path="/about" element={<About />} />
  </Routes>
</BrowserRouter>

📅 Devam Etmek İçin Öneriler

  • Component yapısı ve props kavramını çok iyi öğren.
  • Hooks (useState, useEffect, useContext) konularını kavra.
  • TypeScript ile projeler geliştir.
  • Zustand veya Redux gibi global state yönetimlerini incele.
  • React Router kullanarak routing mantığını çöz.
  • Axios veya Fetch ile API türü HTTP istekleri yapmayı öğren.
  • Projelere SSR (Server Side Rendering) için Next.js girişi yapabilirsin.

🔧 İleri Seviye React Proje Kurulumu ve Yapısı

1. Yeni Proje Başlat

npm create vite@latest my-app -- --template react-ts
cd my-app
npm install
npm install axios zustand react-router-dom

2. Temiz Klasör Yapısı

src/
├── assets/
├── components/
├── hooks/
├── layouts/
├── pages/
├── routes/
├── services/
├── stores/
├── types/
├── utils/
└── App.tsx
└── main.tsx

3. Axios Service Katmanı

import axios from 'axios';

const api = axios.create({
  baseURL: 'https://api.example.com',
  timeout: 10000,
});

export default api;

4. Zustand Global State

import { create } from 'zustand';

interface UserState {
  name: string;
  setName: (name: string) => void;
}

export const useUserStore = create<UserState>((set) => ({
  name: '',
  setName: (name) => set({ name }),
}));

5. React Router Kullanımı

import { BrowserRouter, Routes, Route } from 'react-router-dom';

<BrowserRouter>
  <Routes>
    <Route path="/" element={<Home />} />
    <Route path="/about" element={<About />} />
  </Routes>
</BrowserRouter>

🌟 Final Tavsiyeler

  • TypeScript kullan.
  • Axios interceptor ayarla.
  • Zustand ile atomic state yönet.
  • Lazy loading uygula.
  • Hook'lar geliştir.

Hazır mısın? 🚀 Artık frontend geliştirmede yeni bir seviyeye çıkıyorsun!

« Geri dön | Yorum gönder | Yukarı ↑
» Hakkımda
A
Atilla Mutlu
Yazılım Geliştirici

Devamını oku »
» Son Yazılar
› Git’te “master” mı “main” mi? Bir kelimenin ardındaki hikâye
› Laravel Model Controller
› PostgreSQL Mini‑Kılavuz
› ReactJS Rehberi
› Spatie Laravel Paketleri
» İstatistik
Ziyaretçi Sayısı
036380
Toplam yazı: 63
PHPpowered SQLiteinside Firefoxile daha iyi CSStables ♥
Bu site en iyi 1024x768 çözünürlükte görüntülenir.
Copyright © 2006-2026
Anasayfa | Hakkımda | İletişim | Yukarı ↑
Bu sayfa 0,022 saniyede oluşturuldu.