Viale Europa, 43. Lignano Sabbiadoro (UD)
Viale Europa, 43. Lignano Sabbiadoro (UD)
Possiamo affermare che sviluppare un App per dispostivi mobile è un’operazione al quanto complessa. Basta solo pensare che ogni piattaforma ha i suoi linguaggi e i suoi strumenti: se si vuole sviluppare un App per Android bisognerà conoscere Java/Kotlin e usare Android Studio, mentre per un App iOS bisogna conoscere Swift e usare XCode.
In aiuto agli sviluppatori, esistono diversi Framework che con un unico linguaggio e un unico strumento si possono sviluppare applicazioni per entrambi i sistemi. Tra i vari framework poi troviamo quelli nativi o quelli ibridi, che utilizzano le tecnologie web per lo sviluppo.
Molto spesso però, il software che sia va a costruire richiede diversi scenari che non vengono più soddisfatti da una semplice applicazione mobile. Se ad esempio si sviluppa una soluzione B2B molto probabilmente sarà necessario un’applicazione Desktop (Windows o Mac) oppure un’applicazione web da installare sul server interno.
Fino ad ora abbiamo trovato in Xamarin (e .NET) un valido alleato per le nostre soluzioni. Tuttavia nell’ultimo periodo, ci siamo resi conto che strumenti come Visual Studio, invece di accelerare il nostro lavoro lo rallentava, non solo per gli innumerevoli bug presenti nella versione per Mac, ma anche perché ora mai Xamarin è diventato un framework “vecchio” e troppo “pesante”.
Invece che aspettare MAUI (il successore di Xamarin) abbiamo preferito guardarci intorno scoprendo così Flutter.
Flutter più che un framework è un toolkit per l’interfaccia grafica, che permette di creare delle app moderne multipiattaforma e con una logica di sviluppo molto veloce.
Il linguaggio di programmazione utilizzato in Flutter è Dart, con una sintassi derivata dal C come C# o Java che ci ha permesso di impararlo molto velocemente.
Anche la logica a “Widget” annidati di Flutter che a primo impatto sembra forviante, si è dimostrato molto veloce sia da scrivere che da consultare, anche per alcuni del nostro team più poco esperti di programmazione.
Anche la libertà di utilizzare strumenti di sviluppo alternativi (come Visual Studio Code) ha reso molto più semplice diverse fasi dello sviluppo.
Purtroppo, l’unico inconveniente che abbiamo riscontrato è il fatto che logiche e interfaccia vengono gestite solamente tramite il linguaggio Dart, richiedendo che sempre i programmatori si devono occupare anche dell’interfaccia grafica, cosa che prima era gestita direttamente dai grafici lavorando in AXML. Ma, è anche vero che, come negli anni precedenti, i nostri grafici hanno dovuto imparare a scrivere in AXML, non abbiamo visto così complesso istruirli sul disegnare le interfaccie con Dart.
Per questo abbiamo già dato il via alla migrazione da Xamarin a Flutter e stiamo già per rilasciare la prima App sviluppate con questa tecnologia.
Vediamo se abbiamo fatto la scelta giusta!