Migrer de SwiftUI vers Flutter : bonne idée?

Salut @jl22,

ta question est très intéressante et il y a plusieurs réponses possibles :grin:

Concernant les migrations de SwiftUI :

Le framework est encore jeune, d’où les évolutions successives avec parfois des Breaking changes que redoutent les développeurs.
Ces migrations seront de moins en moins nombreuses avec les années.

Je me souviens encore des migrations Swift 1 → Swift 2 → Swift 3 :scream:
Depuis Swift 4, les modifications sont surtout additives et moins stressantes car le langage a mûri.

Les migrations avec Flutter

Pour le moment les migrations de Flutter on été très peu nombreuses, j’ai commencé avec Flutter 1.18 et nous sommes aujourd’hui en version 3. Le seul changement significatif a été la gestion des valeurs nulles en Dart (ajouté avec Flutter 2), tout le reste a été principalement additif.

Ca ne veut pas dire qu’à l’avenir il n’y aura pas de gros changements de Flutter, mais pour le moment ils tiennent une politique de mises à jour plutôt agréable pour nous.

Par contre, lorsque Apple sort des nouveautés sur iOS, elles ne sont pas toujours gérées par Flutter et tu devras ajouter du code Swift à ton projet (exemple : AppClips)

Bases de données CoreData, Firebase, etc.

Il existe effectivement d’autres systèmes de bases de données utilisables sous Flutter (dans le cours j’en présente plusieurs, notamment Floor).
Firebase est une solution connectée que je ne conseille pas pour plusieurs raisons

L’aspect multiplateforme de Flutter (iPhone, Android, Windows, Mac, Web, etc.)

C’est selon moi le meilleur argument en faveur de Flutter : tu peux facilement partager du code entre toutes ces plateformes. Par exemple, l’app de Purple Giraffe a exactement le même code pour iPhone et Android.
L’inconvénient est que l’apparence est la même pour toutes les plateformes alors qu’habituellement elles utilisent des conceptions différentes.

Ma façon de fonctionner actuellement

Je commence mes nouveaux projets systématiquement sur Flutter :

  • je prototype rapidement des concepts
  • ils fonctionnent directement sur iOS et Android
  • je peux réutiliser du code entre les apps mobiles et l’eventuel site de gestion/backoffice que je code aussi en flutter

Choisir le meilleur outil pour le job

Est-ce que Flutter restera le meilleur framework à vie ? Probablement pas. Mais actuellement c’est le cas selon moi pour le type de projets que j’entreprends.

Rien ne n’empêchera un jour de recréer une version native SwiftUI pour les projets qui en valent la peine et pour lesquels le besoin s’en fait sentir, et de garder la version Flutter pour Android.
Mais pour l’instant ça n’est pas arrivé.

PS : je me suis permis de migrer la réponse vers un sujet dédié pour faciliter les futures recherches.

2 « J'aime »