Bir React projesi yaparken bir noktadan sonra “Redux kullanmamız lazım” sözünü duymuşsunuzdur.

Redux benim de projelerimde kullandığım, hala popüler olan bir state management kütüphanesi. Ancak Redux kullanırken kendimi bir çok kez, Dan Abramov’un da sitem ettiği şu sözleri söylerken buldum.

DanAbramovReduxTweet.png

https://twitter.com/dan_abramov/status/1191487232038883332?lang=tr

“4 yıl önce yazdığım redux örnek koduna bakıyorum ve ne olduğu hakkında hiç bir fikrim yok. Sadece bir kaç veri çekmek istiyorum. Neden bu 5 tane ayrı dosya ve sabitler bana yüksek sesle bağırıyor.”

Ve bunu 2019’da söyledi. Burada da anlaşılacağı üzere API’dan çektiği bir datayı Redux’a yazdırıyor. Neden? Çünkü çektiği data’yı Redux’ta tutarak her yerden erişmek ve güncellediğinde kullanılan her yerde güncellenmesini kolaylaştırmak istiyor. Yani “Server State” leri daha rahat kontrol etmek istiyor

<aside> 💡 State Management yapısı burada ikiye ayrılıyor;

</aside>

1- Client Side States : Dark mode, sepet, tema vs gibi sadece client tarafında tutulan bilgiler. Sepete bir ürün eklendiğinde Navbar’ın güncellenmesi gibi.

2- Server Side States: İşte burada Dan Abramov’un da, benim de şikayet ettiğim durumlarda geçerli olan bilgiler tutuluyor. Database’den çekilen verileri tutmak için oluşturulan state’ler.

1.si için;

gibi state manegement kullanılmaya devam edilebilir.