🔹 Redux nedir?

Global state management için kullanılan bir kütüphanedir.

Context API + useReducer karışımı gibi düşünülebilir.

🔹 Reducer

State’i güncelleyen saf (pure) fonksiyonlardır.

👉 Reducer’lar aynı inputlara aynı outputu vermeli.

Side-effect olmamalı (örn: Date.now(), Math.random() reducer içinde kullanılmaz).

🔹 Action

Reducer’ı tetikleyen objelerdir.

Her action’ın type property’si vardır, isteğe bağlı payload içerebilir.

{ type: "DEPOSIT", payload: 100 }

🔹 Dispatch

Action’ı reducer’a göndermek için kullanılır.

🔹 Store

Tüm uygulamanın global state’ini tutar.

Reducer’lar combineReducers ile rootReducer’a birleştirilir.

Bu rootReducer → createStore içine verilir → Store oluşur.


Redux Kurulum

npm i redux react-redux redux-devtools-extension