Flutter, mobil uygulama yazılımı, React ise web uygulama yazılımı, ne alakası olabilir bu karşılaştırmanın diyeniniz mutlaka olacaktır. En baştan belirtmeliyiz ki her ikisininde ortak noktası front-end tarafında yazılan yazılım framework’leri olmasıdır. Flutter, Dart dili, React ise Javascript dili üzerinden geliştirilmiştir. Flutter, kendi web sitesinde React’tan esinlendiğini belirtmiştir. Birçok özelliği ile birbirine benzeyen yazılımların en önemli özelliği state yapısının kullanmalarıdır.
State ve State Yönetimi
Bir butona tıkladıktan sonra bir değeri güncellemek için, kullanıcı tarafından girilmiş bir input değerini saklamak için veya bir servisten dönen sonucu depolamak/kaydetmek gibi birçok farklı durumda state’i kullanılmaktadır.¹ State yönetimi ise bu kavramların her birinin yönetimini ve organizasyonunu sağlar. Kod karmaşıklığının önüne geçilerek daha anlaşılı ve düzenli olmasını sağlamaktadır. State’in ne olduğu konusunda daha detaylı bilgi için kaynak linklerine erişim sağlayabilirsiniz.
Flutter, state yönetimini geliştirdiği BloC patterni üzerinden yaparken, React, Redux ile state yönetimini düzenli bir şekilde yapmaktadır. İkiside state yönetimini benzer şekilde kullanmaktadır. Arasındaki farklara değinmek gerekirse;
Redux, global bir mağaza kullanır, böylece tüm uygulama durumunuz tek bir nesnede temsil etmektedir.
“BLoC, İş Mantığı Bileşeni (Business Logic Component) anlamına gelir ve uygulama durumunu birden çok bloğa dağıtmaktadır. Avantajlları arasında platformdan ve çevre değikenlerinden bağımsız kalması yer alır ve ayrıca arayüz componentleri işle değil sadece arayüzle ilgendiğinden geri kalan kısmı etkilemez.
Kaynak
¹ Kodcular, https://medium.com/kodcular/reactjs-state-nedir-class-componentlerinde-nasıl-kullanılır-68694a9e0173