Flutter uygulamalarında Riverpod kullanımını anlatacağım bu yazı serisine hoşgeldiniz. 🙂 Öncelikle giriş yazısında Riverpod nedir, ne işe yarar bu konudan biraz bahsetmek ve daha sonrasında Riverpod’un kullanım alanlarını, nasıl kullanıldığını yazı serisi şeklinde anlatacağım.
Riverpod nedir?
Riverpod, Flutter için oluşturulmuş bir state management çözümüdür. “Reactive caching and data binding framework” şeklinde kendisini tanımlar. Provider’ın gelişmiş bir sürümü olan Riverpod, Provider’ın aksine BuildContext’e bağımlı değildir. BuildContext’e bağımlı olmayan providerlar, Flutter uygulamalarının herhangi bir yerinden erişilebilir. Bu da Riverpod içerisinde providerlar’ı global değişken yapar.
Peki neden Provider değil de Riverpod? Çünkü, Riverpod compile-safe çalışır. Eğer proje başarıyla koşuyorsa, her şey yolunda demektir. Ayrıca Riverpod ile test edilebilen kodlar yazmak çok daha kolaydır.
Neden Riverpod?
Bunun için nedenleri şöyle sıralayabiliriz:
- Provider, değişimleri dinlemek için BuildContext’e bağımlıdır fakat Riverpod değildir.
- Provider, compile-safe çalışmaz. Hataları bulmak için uğraştırır.
- Runtime exception yaşamanız Provider ile olasıdır fakat Riverpod ile bunlar düzeltilmiştir.
- Provider’da aynı tipe sahip birden fazla provider oluşturamazsınız fakat Riverpod ile bunu yapabilirsiniz.
- Riverpod providerlar’ı global olarak çalışır ve Flutter’a bağımlı değildir.
Sonuç
Riverpod, Provider’ın çok daha gelişmiş bir hali olarak karşımıza çıkıyor. Flutter uygulamaları yazarken kullandığım bu state management kütüphanesine dair öğrendiğim birçok şeyi önümüzdeki günlerde blogumda yazmayı planlıyorum. O vakte kadar takipte kalın. 🙂
Okuyucuya Not
Merhaba okuyucu! Blogum son zamanlarda yüksek trafik almaya başladı ve bu durumdan memnunum fakat aynı zamanda siz ziyaretçileri tatmin edememekten endişeliyim. 🙂 Eğer yazılarım ile ilgili bir tavsiyeniz olursa mail adresimden bana ulaşabilir veya Twitter üzerinden direct message gönderebilirsiniz. Github’ta örnek olarak yaptığım projelere göz atmak isterseniz de bu linki kullanabilirsiniz. Umarım bu ziyaretinizle size bir şeyler katabilmişimdir.
Sağlıcakla kalın!