Annonces relatives à ArcGIS Runtime en 2022 et au-delà
ArcGIS Runtime 100.x a été publié pour la première fois en novembre 2016. Au cours des 5 années qui ont suivi, Esri a livré 13 versions pleines de nouvelles fonctionnalités intéressantes, et la version 100.14 vient d'arriver avec de nouveau plusieurs belles innovations. Dans cet article, je vous propose d'évoquer quelle sera l'évolution des SDK ArcGIS Runtime au-delà de cette dernière version 100.14.
L'un des principes sous-jacents d'ArcGIS Runtime a toujours été de fournir une famille de SDK puissants pour inclure des capacités avancées de cartographie et d'analyse spatiale dans vos applications bureautiques et mobiles. Offrir cette expérience pour vos applications professionnelles signifie (entre autres) maintenir des API cohérentes, veiller à ne pas introduire de changements de rupture et s'en tenir à une cadence de publication régulière et prévisible. Cela signifie également prendre en charge une expérience de développement qui semble naturelle aux développeurs qui choisissent d'utiliser le SDK Runtime dans leurs applications.
Cependant, cinq ans, c'est relativement long dans le monde des technologies de développement et, pendant cette période, de nombreuses mises à jour et modifications ont été apportées, à la fois aux plateformes ciblées par ArcGIS Runtime et aux outils de développement que vous utilisez pour créer vos applications natives. Il est donc temps d'envisager quelques évolutions.
Les évolutions à venir
L'équipe Runtime, toujours en veille, souhaite mieux prendre en charge ces évolutions en proposant une technologie qui permettra aux développeurs de créer des applications Runtime prêtes pour les environnements et appareils des années à venir. Pour ce faire, les deux prochaines versions du SDK ArcGIS Runtime après la version 100.14 seront différentes des versions habituelles.
En août prochain, la version 100.15 sera la toute première version de support long terme. Contrairement à toutes les versions de Runtime précédente, cette version n'inclura pas de nouvelles fonctionnalités. Elle sera entièrement dédiée à des corrections de bugs et des mises à jour des diverses bibliothèques tierces utilisées dans les SDK. Cette version 100.15 sera pris en charge pendant 5 ans au lieu des 4 habituelles en ajoutant une année supplémentaire de support de disponibilité générale, ce qui signifie qu'il y aura 2 ans de support de disponibilité générale (certification d'environnement, correctifs, patch de sécurité), 1 an de support étendu (correctifs, patch de sécurité) et 2 ans de support mature (ressources d'assistance uniquement, sans correctifs).
Après cette version 100.15, la version suivante des SDK ArcGIS Runtime sera la version 200.0. Elle s'appuiera sur 100.15 pour fournir les mêmes fonctionnalités, intégrations et modèles que vous utilisez aujourd'hui, mais adaptée aux derniers outils de développement fournis par Apple, Google, Microsoft, Qt et Java.
Avec cette version, Esri proposera :
- Un tout nouveau SDK ArcGIS Runtime pour Swift.
- Un tout nouveau SDK ArcGIS Runtime pour Kotlin.
- Une mise à jour du SDK ArcGIS Runtime pour .NET afin de prendre en charge .NET MAUI.
- Une mise à jour du SDK ArcGIS Runtime pour Qt vers Qt 6.
- Une mise à jour du SDK ArcGIS Runtime pour Java afin de mieux l'intégrer à JavaFX.
En résumé, avec la version 200.0, Esri fera progresser la famille des SDK ArcGIS Runtime pour se concentrer sur le développement futur des applications Runtime, tandis qu'avec la version 100.15, Esri offrira un solide engagement pluriannuel pour permettre une prise en charge continue des applications existantes.
Les détails
Toutes les versions 200.0 d'ArcGIS Runtime SDK seront construites sur le même noyau d'exécution C++, déjà largement éprouvé et qui a évolué régulièrement depuis la sortie de la version 100.0.
Cela signifie que la version 200.0 inclura les mêmes fonctionnalités, la même fiabilité, les mêmes performances et les modèles d'objets avec lesquels vous avez l'habitude de travailler. Il s'agit juste d'une mise à jour pour s'adapter naturellement aux outils et pratiques de développement d'aujourd'hui. À quelques rares exceptions près, les classes, les méthodes et les propriétés resteront les mêmes à moins qu'Esri ait identifié une meilleure approche pour fournir les mêmes fonctionnalités. En d'autres termes, les SDK 200.x sont la continuation du travail remarquable réalisé par l'équipe Runtime depuis le début du projet ArcGIS Runtime.
On ajoutera qu'il n'y aura aucun changement au niveau des licences ou des capacités. Si vous avez des chaînes de licence 100.x, elles fonctionneront à 200.x. Les niveaux de licence Lite, Basic, Standard et Advanced ainsi que les licences d'extension resteront inchangés.
Esri maintiendra également la même fréquence de publication et le même cycle de vie du produit que vous connaissez actuellement, donc en plus de s'appuyer sur la fiabilité de ce qui sera alors 6 ans de SDK Runtime, vous pourrez continuer à compter sur un calendrier de mise à jour de Runtime avec 4 ans de support pour chaque version.
Voyons maintenant ce que signifient ces mises à jour pour chaque SDK…
SDK ArcGIS Runtime pour Swift
Il s'agira d'une réinvention complète du SDK ArcGIS Runtime pour proposer le premier SDK Swift, avec une prise en charge prête à l'emploi de fonctionnalités telles que Swift Concurrency, SwiftUI, les structures, les protocoles, les énumérations avec valeurs associées et les collections Swift natives. Le SDK ArcGIS Runtime pour Swift remplacera le SDK ArcGIS Runtime basé sur Objective-C pour iOS et une réécriture du code d'application sera nécessaire.
SDK ArcGIS Runtime pour Kotlin
Il s'agira d'une réinvention complète du SDK ArcGIS Runtime pour proposer le premier SDK Kotlin, avec une prise en charge prête à l'emploi de fonctionnalités telles que les coroutines, les flux et la sécurité nulle. Le SDK ArcGIS Runtime pour Kotlin remplacera le SDK ArcGIS Runtime basé sur Java pour Android et une réécriture du code d'application sera nécessaire.
SDK ArcGIS Runtime pour .NET
La version 200.0 s'appuiera sur la version 100.15 pour ajouter la prise en charge de .NET MAUI (interface utilisateur d'application multiplateforme), .NET6 pour Android et .NET6 pour iOS, la prochaine génération de frameworks de développement multiplateforme .NET. 100.15 sera la dernière version d'ArcGIS Runtime à prendre en charge Xamarin.Forms, Xamarin.Android et Xamarin.iOS.
SDK ArcGIS Runtime pour Qt
L'éditeur de Qt fait passer les développeurs à la version Qt 6, et la version 200.0 du SDK ArcGIS Runtime pour Qt obligera donc logiquement les développeurs à adopter Qt 6. Le passage à Qt 6 permettra aux développeurs ArcGIS de tirer parti des nouvelles API graphiques, des architectures de plateforme, des fonctionnalités de langage et de Suite. 100.15 sera la dernière version du SDK ArcGIS Runtime pour Qt à prendre en charge Qt 5.
SDK ArcGIS Runtime pour Java
La version 200.0 améliorera l'intégration du SDK ArcGIS Runtime pour Java avec JavaFX et continuera à prendre en charge Java 11 et Java 17.
Pour les deux nouveaux SDK (Swift et Kotlin), la dénomination reflète désormais la technologie du développeur, conformément aux trois autres SDK. Dans le passé, il y a parfois eu confusion puisque les SDK .NET et Qt prennent tous deux en charge la création d'applications iOS et Android.
ArcGIS Runtime 200.x
Alors que la version 100.15 sera une version de support à long terme axée sur les corrections de bogues, à partir la version 200.0, Esri reviendra à la fourniture de nouvelles fonctionnalités à chaque nouvelle version. Il est trop tôt pour vous dire exactement ce que cela va être, mais les projets et idées ne manquent pas pour suivre les évolutions du reste de la plateforme ArcGIS et vous permettre le développement d'applications natives toujours plus puissantes.
Esri a annoncé publiquement ce plan pour la première fois lors du Developer Summit Esri 2022 à Palm Springs. Les développeurs ont été clairement enthousiasmés par cette nouvelle et Esri prévoit de mettre à disposition des développeurs des versions beta de ces SDK pour que vous puissiez commencer à les évaluer, tout cela plus tard dans l'année.