Windows Azure Mobile Services – quoi, pourquoi ?

image

 

Windows Azure Mobile Services, est le “Back-end as a Service” d’Azure pour les applications mobiles. Complètement prêt à l’emploi, ce service permet de disposer sans connaissances particulières coté serveur de tout le code nécessaire à une application mobile pour stocker et partager de la donnée… voir plus !

Azure Mobile Services couvre toutes les fonctionnalités requises par une application mobile, des plus essentielles telle que la gestion des données, aux scénarios plus complexes comme la gestion de l’identité et des nofications.

 

1 - Données et API :

Mobile Services propose la création d’une base de données en mode “code first” : inutile de créer un modèle de données avant de commencer à travailler, celui-ci est automatiquement généré et mis à jour coté serveur en fonction des objets manipulés dans les applications mobiles. Le développeur se retrouve ainsi avec une base de données SQL Azure sans jamais avoir eu à s’y connecter.

Pour consommer les données, une couche de service JSON est auto-générée. Elle permet de manipuler les données coté client en mode CRUD au travers de requêtes REST. La couche de service est extensible par configuration coté server, avec possibilité d’altérer légèrement les données ou, par exemple, de déclencher des actions telles que des notifications au travers de code node.js.

 

imageimage

 

2 – SDK multi plateformes

Microsoft propose un SDK et des modèles de projets “clés en main” pour les principales plateformes mobiles.

Ainsi, en un seul clic, il est possible depuis l’interface d’Azure de récupérer un projet de développement prêt pour interagir avec  Windows Azure Mobile Services depuis les différentes plateformes : Windows 8, Windows Phone 8, IOS, Android et JavaScript (pour sites Web mobiles par exemple). Aucun lien fort avec les technologies de développement Microsoft, Windows Azure Mobile Services est complètement agnostique à ce niveau là.

image

 

3 - Notification et Push

Mobiles services simplifie la gestion du push / notification multi devices. Vu que Microsoft, Apple et Google proposent tous une implémentation différente des notifications coté serveur, Azure Mobile Service se positionne en intermédiaire pour faciliter le travail d’intégration : les services sont configurés en central pour un seul mode de notification coté serveur, indépendamment du client, Mobile Service s’occupe de transférer aux différents terminaux ciblés indépendamment chaque OS.

image

 

4 – Gestion d’identité

Il n’y a rien de plus pénible pour un développeur mobile multi plateforme que de gérer l’identification des utilisateurs au travers des fournisseurs d’identité dit “publics”. Chaque fournisseur propose une configuration différente et le travail d’intégration est différent sur chaque plateforme.

Mobile Services offre un service de fédération d’identité coté serveur – le développeur se contente de déclarer et de configurer les fournisseurs qu’il souhaite supporter (entre Live, Facebook, Twitter et Google) et dispose d’un mode d’intégration unique pour tous coté applicatif.

 

image

 

5 – Scheduler

Un backoffice peut souhaiter effectuer des traitements de fond, par exemple pour purger des données, générer des statistiques ou effectuer des backup. Windows Azure Mobile Service permet aux développeurs d’écrire des scripts Node.js, non exposés au travers des API et pouvant être planifiés pour s’exécuter à la demande ou à intervalle de temps régulière.  Coté client, le SDK permet de gérer une et une seule implémentation, vers Mobile Services, qui sert d’intermédiaire vers les fournisseurs publics.

image

 

6 – Custom API

L’API auto généré de Mobile Service est fortement liée aux données. Il est certes possible de modifier légèrement son comportement pour rajouter des règles de gestion en node.js, mais pas de détourner son usage pour écrire du code serveur indépendant d’une action CRUD.

Depuis Juin 2013, Mobile Services propose aux développeurs de publier leurs propres services au travers des fonctionnalités de Custom API. Il est ainsi permit d’écrire des services en node.js effectuant des traitements  métier ne manipulant pas de données ou bien s’appuyant sur des sources de données externes.

image

 

Pour rentrer dans le vif du sujet, Azure Mobile Service est extrêmement bien documenté et dispose d’un centre de développement dédié sur le portail Azure. Celui-ci contient des exemples de configuration et de code dans les différents langages pouvant consommé de l’Azure Mobile Service, autant en JavaScript, C#, Objective-C qu’en Java !

http://www.windowsazure.com/en-us/develop/mobile/?fb=fr-fr

Photo de profil

Ces billets pourraient aussi vous intéresser

Vous nous direz ?!

Commentaires

comments powered by Disqus