React Native Vs. flutter

Qualche tempo fa abbiamo parlato di Native-app e app Cross Platform, React Native e Flutter servono per costruire app cross platform.

Sono molte le aziende che hanno bisogno della loro app, e molte aziende preferiscono fare app cross platform perchè, a livello di costi, sono meno impegnative. 

In questo articolo si parlerà di queste due piattaforme.

Cosa è react native 

React Native è un framework progettato da Facebook e reso open source dal 2015. Viene utilizzato per fare app cross platform.

React Native usa Javascript, che è un linguaggio molto popolare al momento e che può essere utilizzato senza problemi con un po’ di training. Inoltre, con Javascript può essere fatto quasi tutto.

Quindi React Native è efficace per: 

  • Sviluppo app cross platform
  • Creazione di app utilizzando il linguaggio JavaScript
  • Sviluppo di applicazioni sia per Android che per iOS utilizzando una singola base di codice
  • Utilizzando lo stesso design di React

Pro e contro

Pro: 

  • Aggiornamenti veloci: Ogni volta che si modifica qualcosa dell’app si può inserire il codice direttamente sull’app funzionante, questo permette allo sviluppatore di vedere i cambiamenti subito, senza dover ricostruire l’app da zero.
  • Essendo un framework per app cross platform, permette di usare un codice per costruire app adatte sia per IOS che Android
  • Stabilità: questo framework è in giro dal 2015, quindi gli sviluppatori di Facebook hanno avuto tutto il tempo di stabilizzare l’API

Contro: 

  • Non è Native: Ovviamente l’esperienza di un’app cross platform, non è la stessa di una Native, quindi sviluppando un app con React Native, l’esperienza sarà simile ad un app Native, ma non identica. 
  • Libertà di scelta: Può essere un vantaggio, ma anche uno svantaggio in quanto può richiedere molto tempo decidere quali sfumature dare all’app.
  • Applicazioni più grandi di quelle Native: Le applicazioni scritte in React Native devono essere in grado di eseguire il codice Javascript (JavaScript Virtual Machine). Android non ha questa funzionalità come impostazione predefinita, il che significa che le applicazioni devono includere una libreria che supporti il codice JavaScript, per questo le app risulteranno più grandi delle controparti Native.

Cosa è flutter

Flutter è un progetto nato nel 2017 da Google, ed è un modo facile per sviluppare app per mobile, web e desktop. 

Flutter è gratis oltre che open-source. Inoltre, è basato su DART, un linguaggio di programmazione sviluppato da Google, è relativamente nuovo e facile da imparare, sopratutto per chi conosce già Java e C#

Pro e contro

Pro: 

  • Veloce: Dal punto divista degli sviluppatori, Flutter è veloce e molto dinamica. Inoltre è possibile fare cambiamenti nell’app e vederli subito. 
  • Un solo codice: Anche con flutter si possono sviluppare app cross platform, ciò significa che con un solo codice si possono fare app sia per IOS che Android.
  • 50% dei test in meno: Il processo per testare la qualità dell’app è molto più veloce e si possono effetturare fino al 50% dei test in meno. 

Contro

  • Community: Flutter è molto recente per cui la comnunity non è molto vasta, inoltre Dart non è un linguaggio di programmazione molto usato. 
  • Supporto: Per ora non c’è molto supporto per piattaforme CI come Travis o Jenkins.
  • Grandezza delle app: Le app sviluppate con Flutter sono molto grandi rispetto alle app Native.

Case Study 

Flutter vs React Native vs Native: Deep Performance Comparison : Confrontiamo le prestazioni di FPS, CPU, memoria e GPU dei più diffusi strumenti di sviluppo per dispositivi mobili. 

Cross-platform Mobile Development: Flutter Vs React Native Development Comparison and Performance Checks: Cosa c’è dietro questi due framework? Perché sono popolari? Quale è più efficace? Come può Flutter essere migliore di una delle tecnologie già consolidate come React Native?

Flutter vs React Native: What to choose to build your mobile app in 2020? (developer insights): Quale è il Framework migliore dal punto di vista degli sviluppatori? 

Quale usare dei due? 

React Native e Flutter sono molto simili tra loro, in linea generale il consiglio è di capire quali sono i propri bisogni e prendere una decisione. React Native ha il vantaggio che è più maturo, Flutter ha il vantaggio della facilità e della velocità.

In ogni caso, per lo sviluppo delle app cross platofrm, questi due framework sono veramente validi. 

Share Post