La version 2.0 de l'API Flex proposent de nombreuses évolutions (101 nouvelles classes et 62 nouveaux événements pris en charge). Je reprends, ci-dessous, les évolutions les plus notables.
Notion de Feature LayerLes Feature Layers constituent un nouveau type de couche opérationnelle créée et gérée coté client. La classe FeatureLayer étend la classe GraphicLayer en permettant l'affichage d'entités vectorielles d'une classe d'entités ou d'enregistrements d'une table publié via un Map Service ou un Feature Service. Les Feature Layers prennent en charge la notion de sélection, les opérations de mise à jour, les filtrages (ensemble de définition), les requêtes (Query) et les requêtes sur les tables reliées.
Mise à jour des donnéesEn version 10, ArcGIS Server permet de publier des Feature Service permettant de publier les modèles d'entités définis dans ArcMap et d'offrir ainsi des fonctions de mise à jour aux applications web clientes. Pour cela, les données doivent être stockées dans une Géodatabase Workgroup ou Enterprise.
Plusieurs composants ont donc été intégrés dans la version 2.0 de l'API Flex pour prendre en charge les opérations de mise à jour. Ainsi, le développeur peut désormais utiliser le composant "Attribute Inspector" pour la saisie ou la mise à jour des attributs. Il peut également utiliser la barre "EditTool" ou "DrawTool" pour la saisie ou la mise à jour des géométries. Un composant "Template Picker" permet au développeur, sans écrire de code, de proposer à l'utilisateur une IHM permettant de sélectionner le type d'entité à saisir sans connaitre à l'avance les modèles d'entités publiés pour chaque couche. Enfin, le composant "Attachment Inspector" permet au développeur de proposer une IHM prête à l'emploi pour que l'utilisateur puisse associer des pièces jointe à ses entités lors des opérations de mise à jour.
Prise en charge des informations temporellesDans ArcGIS 10, il est possible d'activer une dimension temporelle pour chaque couche de la carte. Une fois paramétrée dans ArcMap, la carte publiée avec ArcGIS Server expose également ces informations de temps. L'API Flex possède donc des composants permettant d'exploiter les informations de temps exposées par chaque couche de la carte. Par exemple, un composant "Time Slider" est disponible pour positionner chronologiquement la carte de son application Flex. Le développeur peut également positionner/filtrer ses couches selon le temps (ou la période de temps) directement par code.
Autres évolutionsLa méthode d'authentification pour l'accès aux couches Bing Maps (anciennement Virtual Earth) ne nécessite l'usage de token mais l'utilisation d'une clé (client et server), donc plus besoin de la page de token Virtual Earth.
Les Geometry Services s'enrichissent de 12 nouvelles opérations comme par exemple "AutoComplete", "Convex Hull", "Cut", "Densify", "Difference", "Distance", "Generalyse", "Offset", … On notera également que les opérations "Length" et "Area" supportent désormais différentes unités et les paramètres géodésiques.
L'API Flex 2.0 supporte maintenant les Standalone Tables et les Relationship Classe de la Géodatabase permettant ainsi de faire des requêtes sur les tables (sans géométrie) et les tables reliées.
Les performances des requêtes ont été largement améliorées avec l'usage de messages JSON plus optimisés ou du format AMF (ActionScript Message Format).
Les opérations de géocodage peut désormais prendre en compte une référence spatiale cible lorsqu"ils s'adressent à serveur ArcGIS 10 ou supérieur.
De nouvelles opérations "Closest Facility" et "Service Area" sont désormais prises en charge par l'API Flex 2.0. On notera également, sur l'opération "Routing", la prise en charge de barrières de type linéaire et surfacique (nouveautés de Network Analyst 10).
Enfin, une version officielle (supportée) du modèle d'application "Flex Viewer Sample" sera bientôt disponible sous le nom "ArcGIS Viewer for Flex".