Les données d’applications : les fichiers XML et le Roaming

IC582483En développant vos applications, vous serez probablement ammenés à effectuer des sauvegardes locales de certaines données. Je vais donc vous donner une petite astuce pour sauvegarder et restaurer simplement certains de vos objets métiers.

Prenons le cas d’une application permettant de réaliser des listes de courses. Vos listes contiennent des informations telles qu’un nom, un magasin et la liste des article que vous souhaitez acheter. Voici donc comment, en quelques lignes, sauvegarder et recharger vos données en utilisant un répertoire local ou votre répertoire d’itinérance.

Sauvegarde par sérialisation dans un fichier XML

Le code ci-après vous permet d’aficher une fenêtre de sélection pour choisir le nom du fichier ainsi que l’endroit ou nous allons le stocker. Ensuite, nous générerons le fichier XML représantant une liste de listes de courses.

SaveToXml

Le principe est simple, les données sont sérialisées et injectées dans le fichier que vous aurez choisi.

ChoseSaveFile

Le fichier suivant est alors généré.

SauvegardeXML

L’itinérance (ou Roaming)

Avec Windows 8, vos ordinateurs ou périphériques peuvent fonctionner en se servant des mêmes données sans que vous aillez à vous soucier de la synchronisation entre eux et cela grâce à la mise en place d’un système de Roaming (ou Itinérance) par Microsoft.

Pour l’utiliser, il vous suffit d’ouvrir votre sessions sur vos devices ou ordinateurs à l’aide d’un compte Windows Live. Votre compte possède un espace de stockage sur le cloud qui sera utilisé par les applications Modern UI pour synchroniser leurs données entre vos devices. La synchronisation est totalement transparente et par conséquent vous n’avez plus à vous en soucier.

Sauvegarde dans votre répertoire d’Itinérance (RoamingFolder)

Le dossier RoamingFolder permet de stocker des fichiers ou dossiers propres à une application et un utilisateur. En reprenant l’exemple d’application vu précédemment, nous allons à présent effectuer la sauvegarde automatiquement dans ce répertoire, sans que l’utilisateur n’ait à choisir le répertoire et le nom du fichier de sortie :

SaveToXmlInRoamingfolder

Chargement de notre sauvegarde

Lorsque vous aurez besoin de charger la sauvegarde que vous aurez effectuéee, comme par exemple au lancement de votre application, utilisez le code suivant qui se chargera d’aller chercher dans le répertoire d’itinérance de votre application le fichier « ListsFile.xml » correspondant à la sauvegarde de vos listes de courses.

LoadXMLFile

C’est e prncipe de la désérialisation, qui transforme votre fichier XML en une liste de listes de courses.

La déclaration des fonctionnalité de votre application

Pour accéder aux ressources utilisateur ou aux périphériques connectés, il faut déclarer les fonctionnalités des applications Windows 8. Cette étape est requise si vous souhaitez publier votre application sur le Windows Store. En effet, quand vous soumettez votre application, elle fait tout d’abord l’objet d’un contrôle afin de s’assurer que les fonctionnalités que vous avez déclarées correspondent à la description que vous en avez faite, et avant toute installation, ces dernières seront notifiées à l’utilisateur qui souhaitera la télécharger.

La déclaration se fait en éditant le fichier « Package.appxmanifest » (manifeste de package) de votre projet. Sous Visual Studio, dans l’explorateur de solution de votre projet, double-cliquez sur le fichier « Package.appxmanifest ». Allez ensuite sur l’onglet « Capacités », cochez les cases correspondant aux fonctionnalités que vous souhaitez déclarer et sauvegardez le fichier.

Il existe deux types de fonctionnalités à déclarer dans le manifeste de package : les fonctionnalités à usage général, qui sont celles qui s’appliquent à la majorité des cas d’utilisations dans le cadre des applications de style Modern UI, et celles à usage spécial qui sont destinées à des scénarios très spécifiques. L’utilisation des fonctionnalités à usage spécial est très limitée et sujette à des contrôles complémentaires dans le cadre du déploiement sur le Windows Store.

Les fonctionnalités à usage général proposent l’accès à l’audiothèque, à la bibliothèque d’image, à la vidéothèque, aux stockages amovibles, au microphone, à la webcam, à la localisation, aux fonctionnalités de proximité, aux connexions internet et aux réseaux domestiques ou d’entreprise. Celles à usage spécial, quand à elles, donnent accès à la bibliothèque de documents, à l’authentification en entreprise et à l’utilisation de certificats utilisateurs partagés.

Hello World Modern UI

Dans cette partie, nous allons créer une application Hello World. Nous aurons un bouton au centre de l’écran. En cliquant dessus, le message « Hello world ! » s’affichera via une MessageBox et à la validation par l’utilisateur, on quittera l’application.

Pour commencer, lancez Visual Studio. Créez un nouveau projet soit depuis la page d’accueil en cliquant sur « New Project » ou en allant dans « File » → « New » → « Project ». Créez alors un nouveau projet de type « Blank App » dans la rubrique « Windows Metro Style ».

Une fois votre projet créé, ouvrez le fichier MainPage.xaml. Rajoutez-y le bouton comme suit :

Ouvrez ensuite le fichier MainPage.xaml.cs pour créer l’action liée au click sur le bouton :

Ca y est, votre Hello World Modern UI est terminé, vous pouvez alors l’exécuter :

Obtenir une licence développeur Windows 8

Une licence de développeur pour Windows 8 vous permet d’installer, de développer, de tester et d’évaluer des applications du Windows Store avant qu’elle ne soit testées et validées par Microsoft. Ces licences sont gratuites. Vous pouvez en obtenir autant que nécessaire dès lors que vous possédez un compte Windows Live.

A la création de votre premier projet d’application Windows 8, Visual Studio vous demandera une licence de développeur Windows 8. Dans cet article, je vais vous expliquer la procédure à suivre pour en avoir une.

Pour commencer, lancez Visual Studio 2012.

Une fois sur la page d’accueil, cliquez sur « New Project » ou allez dans « File » → « New » → « Project ». Créez alors un nouveau projet de type « Blank App » dans la rubrique « Windows Metro Style ».

Un message s’affiche, vous proposant d’obtenir une licence temporaire de développeur. Cliquez sur « J’accepte » et connectez-vous avec votre compte Live afin de l’obtenir.

Une fois la procédure terminée, vous obtiendrez une confirmation avec la durée de validité de votre licence de développeur Windows 8. Vous voilà alors prêt à créer votre première application !

La sécurité sur Windows 8

Ce tout dernier système s’exploitation de Microsoft est annoncé comme étant plus sûr, plus sécurisé. Par défaut, il intègre, en plus du traditionnel parre-feu (présent depuis Windows XP), un anti-spyware (comme depuis Windows Vista) et comme grande nouveauté un antivirus.

Dans le cas ou l’utilisateur n’a pas installé d’antivirus, celui par défaut prend automatiquement le relais. Cependant, ce dernier ne sera pas mis à jour aussi souvent qu’un antivirus payant que l’utilisateur pourrait installer.

Le Windows Store pour Windows 8

Le Windows Store est un élément clé de Windows 8. Il fait son apparition sur cette dernière version du système d’exploitation, et permet à l’utilisateur de télécharger, installer et mettre à jour des applications d’un simple clique (ou simple touch), qui sera gratuite ou non selon l’application. Le WIndows Store s’inspire des différents markets que l’on retrouve sur les tablettes ou smartphones.

De plus, grâce à lui, Microsoft a la possibilité de contrôler et valider chaque application avant qu’elle ne soit mise à disposition des utilisateurs de Windows 8, et ainsi en garantir la qualité.

Le support des processeurs ARM

Windows 8 est compatible avec les architectures habituelles des ordinateurs (Intel, AMD), mais il supporte aussi l’architecture ARM.

Ainsi, vous pouvez utiliser Windows 8 sur votre PC, mais aussi sur vos tablettes tactiles grave à Windows RT, que l’on pourrait qualifier de version allégée de Windows 8.

Cette version allégée de Windows vous donnera accès à l’interface Modern UI et à un certain nombre d’applications, mais du fait de son optimisation pour les tablettes, son utilisation sera tout de même limitée par rapport à Windows 8.

Intégration du Cloud computing à Windows 8

Cette nouvelle version de Windows intègre directement une connectivité au Cloud, afin de vous permettre de stocker simplement les fichiers que vous souhaitez partager entre vos différents périphériques (ordinateur de bureau, tablette, smartphone, etc.).

En plus des fichiers, vous pouvez aussi synchroniser vos paramètres. Ainsi, d’un poste Windows 8 à un autre, vous possédez le même environnement de travail (papier peint, historique de navigation, favoris, etc.).

Qu’est-ce qu’une application Modern UI ?

Une application de style Modern UI (anciennement nommé style Metro) est une application pouvant s’exécuter sous Windows 8. Le développement d’une application de style Modern UI peut se faire en plusieurs langages, permettant ainsi à grand nombre de développeurs de le faire dans le langage qu’ils connaissent le mieux.

Que vous maitrisiez le développement web (HTML5/CSS3), le développement d’application .Net en WPF ou Silverlight (XAML/C#, VB, et même C++) ou encore les applications DirectX (C++), sachez que vous pouvez développer vos applications selon le style Modern UI. Ces applications peuvent s’afficher sous différents modes d’affichage avec par défaut un affichage en plein écran et sans bordure.

Cependant, une application de style Modern UI ne peut s’exécuter que sur Windows 8. Nous allons donc poursuivre cet article en vous présentant l’installation de Windows 8, suivie de l’installation de Visual Studio 2012. Ensuite, nous vous expliquerons comment créer votre première application en style Modern UI et terminerons par son déploiement sur le Windows Store.

D̩veloppement Windows 8 РMagazine Programmez!

Dans l’édition de septembre dernier du magazine Programmez! (N°156), un dossier a été consacré à la sortie de la toute nouvelle version du système d’exploitation de Microsoft : Windows 8.

A cette occasion, j’ai rédigé en collaboration avec Jason De Oliveira un article de 3 pages consacré au développement d’applications pour Windows 8.

Cet article explique la marche à suivre pour développer vos applications WIndows 8 et ensuite les publier sur le Windows Store.

Vous trouverez ci-après les trois pages de cet article en basse résolution, et si vous souhaitez en savoir plus, rendez-vous ici.