L'ArcGIS Maps SDK pour Flutter est le tout nouvel SDK disponible dans la
collection de SDKs natifs d'ArcGIS. Depuis
la version 200.6
de ces derniers, il a rejoint les SDKs pour .NET, Qt, Kotlin et Swift et
constitue la meilleure option pour développer des applications de cartographie
et de localisation natives pour Android et iOS.
Dans cet article, nous allons revenir ensemble sur les raisons pour lesquelles
Esri a décidé d'investir dans la technologie Flutter et pourquoi il complète
la famille des SDKs natifs, et sur comment il va vous aider à construire des
applications cartographiques adaptées à vos utilisateurs.
Vue d'ensemble du SDK
Avant que nous ne rentrions plus en détails sur les raisons du développement
de Flutter, parlons rapidement de ce que ce SDK vous permet de faire avec
cette première version.
L'ArcGIS Maps SDK for Flutter 200.6 ne supporte pas encore toutes les
capacités disponibles avec le reste des SDKs for Native Apps (nous y
reviendrons plus tard dans l'article). Cela dit, cette première version donne
tout de même accès à toutes les capacités fondamentales permettant de déjÃ
développer des application répondant à de nombreux cas d'usages :
- Visualisation et édition 2D (incluant le Geometry Editor) ;
- Support des webmaps et des APIs fondamentales du portail ArcGIS ;
- Support de la plupart des types de couches (dont la plupart des couches Esri et OGC) ;
- Géocodage ;
- Calcul d'itinéraires ;
- Localisation de l'utilisateur ;
- Support en ligne et hors ligne ;
- Authentification de l'utilisateur ou par clé d'API.
Le SDK a une
documentation dédiée
ainsi que des
extraits de code
disponibles sur le site Esri Developer, et est disponible en tant que
package pub.dev pour le
téléchargement.
Qu'est-ce que Flutter ?
Flutter est un framework de développement open source multiplateforme
permettant de développer des applications pouvant cibler différents appareils,
dont Android, iOS, Windows, Mac, Linux et aussi le web (le SDK d'ArcGIS pour
Flutter cible uniquement iOS et Android). Il a été développé par Google et
inclut un grand nombre de fonctions de développement permettant de gagner un
temps précieux.
Il s'agit d'un framework d'interface utilisateur réactif et déclaratif, ce qui
signifie que vous déclarez votre interface utilisateur (en utilisant les
widgets Flutter), et que lorsque l'état de votre application change,
l'interface utilisateur réagit automatiquement à ces changements pour refléter
l'état actuel de votre application. Ce modèle moderne de développement de
l'interface utilisateur permet d'éliminer des catégories entières de code
d'interface utilisateur et des bug potentiels.
Flutter s'appuie sur le langage de programmation Dart. Dart a été conçu dès le
départ pour être particulièrement bien adapté au développement d'applications
clientes, en prenant en charge des fonctions permettant d'augmenter la
productivité telles que le
Hot Reload. Dart est fortement typé et dispose d'une sécurité null intégrée. Dans
l'ensemble, Dart est un langage idéal pour éviter les pièges et les bugs
courants de la programmation, et pour prototyper et itérer rapidement sur la
conception de l'interface utilisateur. En y combinant le framework réactif
Flutter, on obtient un environnement de développement d'applications
multiplateforme puissant et facile à apprendre.
Un autre élément clé que beaucoup de développeurs apprécient à propos de
Flutter est son utilisation gratuite. Il vous suffit de télécharger
Flutter,
Visual Studio Code
et
Android Studio
(pour cibler Android) et / ou
Xcode (si
vous ciblez iOS). Tous ces composants sont disponibles et utilisables
gratuitement.
Enfin, les projets Flutter s'appuient fortement sur l'écosystème de packages
pub.dev, ce qui facilite l'intégration de bibliothèques tierces (y compris le
nouveau SDK Flutter Maps) dans vos applications.
Si vous souhaitez en savoir plus, jetez un coup d'Å“il Ã
l'article de blog
annonçant la version bêta du SDK Flutter Maps, qui présente en détail
certaines des fonctionnalités clés et les avantages de travailler avec
Flutter.
Pourquoi un SDK ArcGIS Maps pour Flutter ?
Esri évalue constamment la meilleure façon de répondre aux besoins de ses
clients. Au cours des dernières années, ils ont entendu Flutter revenir de
plus en plus souvent, avec une demande de support croissante pour cette
technologie.
Il y a environ deux ans, certaines considérations clés se sont alignées et les ont aidés à décider d'explorer un SDK Flutter :
Il y a environ deux ans, certaines considérations clés se sont alignées et les ont aidés à décider d'explorer un SDK Flutter :
- De plus en plus de clients s'engagent activement en faveur de Flutter en tant que framework de développement d'applications de choix pour la création d'applications multiplateformes ;
- Google a continué à démontrer son engagement envers Flutter ;
-
La communauté des développeurs Flutter a continué à se développer et Ã
mûrir.
Il est déjà arrivé que l'intérêt pour des technologies similaires s'estompent
ou perdre de l'élan assez rapidement, mais Flutter montre des signes qu'il
s'agissait d'une technologie adaptée et stable pour le développement
d'applications sérieuses, et qu'elle ne va probablement pas disparaître de
sitôt.
Au Developer Summit de 2023, un client d'Esri a fait une présentationsur son
utilisation de Flutter dans ses applications. Cette présentation a également
décidé les équipes d'Esri à examiner ce qu'il faudrait faire pour créer un SDK
Flutter.
De l'idée initiale à la production
L'architecture de base C++ partagée, robuste et testée, qui alimente les SDK
pour applications natives d'ArcGIS a permis de mettre en place un SDK Flutter
de démonstration en l'espace de quelques semaines. Il n'y a eu ensuite qu'un
pas à franchir pour obtenir une première version bêta privée du SDK, et les
choses se sont rapidement développées à partir de là .
En tout et pour tout, Esri est passé de l'idée initiale, à la validation du
concept, à la version bêta privée, à deux versions bêta publiques et, enfin, Ã
cette version de production en l'espace de 18 mois environ !
La première version de production
En travaillant avec quelques utilisateurs clés dans le cadre des bêtas privées
et publiques, Esri a identifié un ensemble de fonctionnalités qui répondraient
aux besoins de nombreux clients et constitueraient une base solide sur
laquelle ils pourraient nous appuyer (il s'agit de la même liste que celle que
vous avez vue plus tôt) :
- Visualisation et édition 2D (incluant le Geometry Editor) ;
- Support des webmaps et des APIs fondamentales du portail ArcGIS ;
- Support de la plupart des types de couches (dont la plupart des couches Esri et OGC) ;
- Géocodage ;
- Calcul d'itinéraires ;
- Localisation de l'utilisateur ;
- Support en ligne et hors ligne ;
- Authentification de l'utilisateur ou par clé d'API.
Se concentrer sur le développement de ces fonctionnalités clés leur a permis
de fournir une API stable, fiable, et largement testée, mais également
une documentation fournie,
des tutoriels
et
des extraits de code.
Ce qui nous attend pour les prochaines versions
Proposer un sous-ensemble de fonctionnalités comporte des défis, notamment
celui de savoir comment aider les développeurs qui prévoient d'adopter le SDK
Flutter Maps, mais qui sont freinés par l'absence d'une fonctionnalité
particulière. Esri prévoit d'ajouter des fonctionnalités à chaque nouvelle
version jusqu'à ce que la parité avec les autres SDK natifs soit atteinte.
Afin d'être transparents sur le développement du SDK et l'atteinte de cette
parité fonctionnelle, Esri a mis a disposition
cette page
décrivant de manière transparente les capacités encore manquantes, ainsi que
les fonctionnalités prioritaires pour les développement des deux prochaines
versions.
Commencer à utiliser le SDK Flutter
Le SDK ArcGIS Maps pour Flutter est donc maintenant disponible. Si vous avez
construit des solutions pendant la bêta, vous pouvez maintenant référencer le
package pub.dev
et déployer vos applications en production (notez qu'il y a quelques
changements mineurs
depuis la bêta 2 que vous devrez prendre en compte).
Pour commencer à utiliser le SDK ArcGIS Maps pour Flutter, rendez-vous sur
le site du SDK, qui comprend
des ressources de démarrage,
des tutoriels,
des exemples de code
et
une référence API complète, ainsi que
la page de parité
mentionnée plus haut.
Vous pouvez également visiter
le forum dédié à l'ArcGIS Maps SDK for Flutter
dans l'Esri Community où l'équipe derrière le SDK équipe est activement
impliquée.
Et si Flutter n'est pas pour moi ?
Prérogatives de votre DSI, besoins spécifiques pour un périphérique, projet
déjà engagé sur une autre technologie, préférences personnelles... Les
promesses offertes par le SDK pour Flutter ont beau être très excitantes,
plusieurs raison font que celui-ci puisse ne pas coller totalement à vos
besoin de développement. Sachez qu'ArcGIS dispose d'une gamme complète pour
le développement d'applications natives, parmi laquelle vous pourriez
trouver une technologie plus adaptée pour répondre à vos attentes. N'hésitez
pas à consulter la documentation de ces SDKs pour en apprendre plus :
- ArcGIS Maps SDK for .NET - pour déployer sur des appareils Windows, Android ou iOS
- ArcGIS Maps SDK for Qt - pour déployer sur des appareils Windows, Linux, macOS, iOS et Android
-
ArcGIS Maps SDK for Kotlin
- pour déployer sur des appareils Android
- ArcGIS Maps SDK for Swift - pour déployer sur des appareils iOS comme les iPhones et les iPads, ou sous macOS utilisant Mac Catalyst
Aucun commentaire:
Enregistrer un commentaire