Développement de l'optimiseur de voyage Bing Maps, une application Windows Store dans JavaScript et C++

Les éléments dans cette partie de la documentation expliquent comment utiliser JavaScript et Visual C++ pour créer une application Windows Store, intitulée l'optimiseur de voyage Bing Maps. Contrairement à un site Web, une application Windows Store qui utilise JavaScript n'est pas déployée page par page à partir d'un serveur Web. Au lieu de cela, elle est installée sur un ordinateur par un utilisateur. Comme toute autre application Windows, une application Windows Store JavaScript a un accès direct à la plateforme sous-jacente et peut partager des informations avec d'autres applications.

Utilisez C++ dans votre application Windows Store JavaScript pour maîtriser entièrement la puissance de l'ordinateur. L'optimiseur de voyage Bing Maps utilise JavaScript pour définir l'interface utilisateur et la bibliothèque de modèles parallèles dans un composant C++ Windows Runtime pour calculer des algorithmes consommant beaucoup de ressources informatiques en parallèle sur tous les processeurs disponibles afin d'améliorer les performances globales. Vous pouvez également utiliser des bibliothèques telles que C++ Accelerated Massive Parallelism (C++ AMP) pour effectuer le travail nécessitant de nombreuses ressources de calcul sur l'unité de traitement graphique (GPU).

Remarque Remarque

Pour télécharger la version Windows Store u code source de l'optimiseur de voyage Bing Maps, consultez l'Exemple d'optimiseur de voyage Bing Maps.

L'application de l'optimiseur de voyage Bing Maps est basée sur du code existant qui utilise le HTML et le JavaScript pour définir l'interface utilisateur et le contrôle ActiveX c++ pour exécuter le traitement en arrière-plan. Cette partie de la documentation décrit également comment nous avons migré la version ActiveX de l'application vers une application Windows Store, ainsi que certaines considérations à prendre en compte lorsque vous migrez le code JavaScript et ActiveX existants vers le code d'application Windows Store. Pour télécharger la version ActiveX du code source, consultez Optimiseur de voyage Bing Maps.

Conseil Conseil

Lorsque nous avons converti la version ActiveX de l'optimiseur de voyage Bing Maps afin qu'il devienne une application Windows Store, nous avons conservé l'utilisation de JavaScript et de C++. Toutefois, si vous deviez créer cette application à partir de zéro, vous pourriez utiliser d'autres langages. Par exemple, vous pourriez utiliser XAML pour définir l'interface utilisateur et .NET Framework pour exécuter le calcul d'itinéraire. Pour plus d'informations pour choisir le langage et les technologies appropriées pour votre application, consultez Commencer à développer des applications Windows Store.

Vous pouvez également créer une application à plusieurs langages qui utilise JavaScript et .NET Framework. Pour plus d'informations sur ce type d'application, consultez Création de composants Windows Runtime en C# et Visual Basic.

Bien que l'optimiseur de voyage Bing Maps illustre les modèles de design que nous considérons comme étant les meilleures pratiques pour utiliser JavaScript et C++ pour créer des applications Windows Store, vous pouvez adapter de nombreux détails d'implémentation pour répondre à vos propres méthodes et aux conditions spécifiques de l'application que vous développez. Par exemple, la partie C++ de l'application utilise l'interface IXMLHTTPRequest2 pour traiter les requêtes HTTP. Vous pouvez suivre le même modèle dans votre application. Lorsque nous estimons que l'implémentation de l'optimiseur de voyage Bing Maps est indispensable à la réussite du développement de l'application, nous l'indiquons dans cette documentation.

L'optimiseur de voyage Bing Maps calcule l'itinéraire le plus court entre un ensemble d'emplacements (ce problème de calcul courant est également appelé le problème du représentant commercial). Le problème du représentant commercial est généralement résolu en utilisant une technique de force brute : calculer chaque itinéraire possible entre tous les emplacements et choisir le plus court. Ce problème devient de plus en plus difficile à mesure que vous augmentez le nombre d'emplacements. Étant donné qu'une approche de force brute ne peut pas résoudre de grands problèmes dans un délai raisonnable, l'optimiseur de voyage Bing Maps utilise une technique appelée l'algorithme d'optimisation de colonies de fourmis pour estimer plus rapidement et plus efficacement l'itinéraire le plus court.

L'interface utilisateur de l'optimiseur de voyage Bing Maps est écrite en HTML et en JavaScript. L'interface utilisateur collecte les lieux de l'utilisateur et affiche l'itinéraire le plus court pour tous ces lieux sur un contrôle AJAX de Bing Maps. Le calcul de l'itinéraire le plus court et l'interaction avec l'API Bing Maps REST (Representational State Transfer) sont écrits en C++. L'interopérabilité fluide entre les langages est essentielle dans Windows Runtime car elle vous permet de combiner les meilleures fonctionnalités de chaque langage dans une même application. Dans le cas de l'optimiseur de voyage Bing Maps, HTML et JavaScript définissent l'interface utilisateur et C++ effectue les opérations nécessitant de nombreuses ressources de calcul.

Optimiseur de voyage Bing Maps

Bien que de nombreuses applications Windows Store utilisent un thème de présentation sombre afin de prolonger l'autonomie des batteries dans les appareils mobiles, nous avons conservé la présentation claire afin de mieux correspondre au site Web Bing Maps. Conserver ce thème clair vous aide également à comparer les différences entre Windows Store et les versions ActiveX de l'application.

Remarque Remarque

L'objectif principal de l'optimiseur de voyage Bing Maps est d'illustrer comment interopérer entre JavaScript et C++. Nous avons également souhaité montrer comment adapter du code existant afin de l'utiliser dans une application Windows Store. Par conséquent, l'interface utilisateur n'est pas conforme à toutes les instructions d'expérience utilisateur permettant d'obtenir une bonne application Windows Store. Lisez l'article sur l'étude de cas de conception : site Web et application Windows Store pour savoir comment transformer votre site Web pour créer une expérience utilisateur vraiment riche.

[Haut]

  • Windows 8

  • Visual Studio 2012

  • Connaissance de la programmation JavaScript et C++

  • Une clé Bing Maps

Il est préférable de lire Développement d'applications Windows Store (JavaScript) si l'utilisation de JavaScript dans une application Windows Store ne vous est pas familière. Cet article vous présente les étapes à suivre pour créer une application complète (mais basique) Windows Store en JavaScript.

Pour plus d'informations sur la façon dont une application Web JavaScript diffère d'une application Windows Store JavaScript écrite pour Windows Runtime, consultez Comparaison entre les applications Windows Store en JavaScript et les applications Web classiques.

[Haut]

Vous pouvez être intéressé par cet exemple et cette documentation si vous souhaitez écrire une application Windows Store en JavaScript et si vous souhaitez également utiliser C++ pour :

  • Améliorer les performances ou effectuer des opérations nécessitant de nombreuses ressources de calcul.

  • Accéder aux services de système d'exploitation Windows qui ne sont pas accessibles via Windows Runtime dans la version actuelle.

  • Réutiliser le code existant déjà écrit et testé.

Nous espérons que les principes et les méthodes de cette documentation vont vous aider à créer votre propre application Windows Store JavaScript qui utilise également C++. Une expérience ou un intérêt prononcé pour la programmation en C++ vous aidera à exploiter au mieux cette documentation. Si vous n'avez aucune expérience en C++, vous pouvez toujours en profiter si vous connaissez des langages de programmation semblables ou .NET Framework.

Si vous souhaitez une présentation générale sur la création d'un composant Windows Runtime en C++ qui peut être appelé à partir d'une application Windows Store générée à l'aide de JavaScript, consultez Création de composants Windows Runtime en C++.

[Haut]

Les éléments de cette partie de la documentation indiquent comment :

  • Utiliser Visual Studio pour créer une application Windows Store JavaScript qui référence le composant Windows Runtime C++.

  • Séparer le code JavaScript dans des modules qui référencent le Web et des composants Windows Runtime.

  • Créer un composant Windows Runtime C++ qui exécute des opérations nécessitant de nombreuses ressources de calcul.

  • Interagir entre JavaScript et C++.

  • Migrer du code (par exemple, le code COM existant) pour une utilisation dans une application Windows Store.

[Haut]

Cette documentation ne traite pas les aspects suivants du développement d'une application Windows Store :

  • Principes de conception d'applications.

  • Concepts de base de la programmation C++ ou JavaScript.

  • Informations détaillées à propos de l'algorithme d'optimisation de colonies de fourmis.

  • Procédure de dépannage des problèmes liés au comportement ou aux performances de votre application.

  • Procédure de préparation de votre application afin de l'utiliser dans d'autres paramètres régionaux.

  • Procédure pour certifier votre application et la publier dans Windows Store.

L'objectif de cette application est l'interopérabilité entre JavaScript et C++. Par conséquent, nous n'avons pas implémenté toutes les fonctionnalités permettant d'obtenir une bonne application Windows Store. Une fonctionnalité importante que nous n'avons pas implémentée est la capacité de restaurer l'état de l'application lorsque l'utilisateur l'exécute après sa fermeture (par exemple, après un redémarrage). Pour obtenir un exemple illustrant cette fonctionnalité, consultez Exemple d'activation et de suspension d'applications.

Les ressources suivantes peuvent vous aider à comprendre le développement d'une application Windows Store.

Planification d'applications Windows Store

Fournit des considérations dont il faut tenir compte lorsque vous planifiez vos applications Windows Store.

Référence du langage Visual C++ (C++/CX)

Décrit le modèle de programmation C++ pour créer des applications et des composants Windows Store. Décrit comment le C++ natif peut interagir directement avec des langages tels que JavaScript sans nécessiter de couches intermédiaires de logiciel.

Référence du langage JavaScript

Montre l'implémentation Microsoft de JavaScript, qui est conforme à la spécification de langage ECMAScript 5ème édition. L'implémentation Microsoft fournit également des fonctionnalités supplémentaires qui ne sont pas incluses dans les normes ECMA.

Démarrage rapide : débogage d'applications (JavaScript)

Fournit une vue d'ensemble du débogage des applications Windows Store JavaScript.

Définition des ressources d'application

Explique comment définir des ressources d'application pour améliorer la facilité de maintenance et la localisation.

Selling apps

Décrit les étapes nécessaires pour publier une application dans Windows Store.

[Haut]

Nous vous recommandons de lire Vue d'ensemble de l'exemple Optimiseur de voyage Bing Maps pour plus d'informations sur la façon de charger et d'exécuter le projet et le flux global d'application. Le tableau suivant décrit les différents articles de cette partie de la documentation afin que vous puissiez facilement y faire référence.

[Haut]

Titre

Description

Vue d'ensemble de l'exemple Optimiseur de voyage Bing Maps

Décrit les caractéristiques fondamentales du projet Optimiseur de voyage Bing Maps, par exemple comment il est créé, structuré et généré.

Utilisation de JavaScript dans l'exemple Optimiseur de voyage Bing Maps

Décrit comment la partie JavaScript de l'application est organisée et comment les variables locales et les contextes de site Web communiquent les uns avec les autres.

Utilisation de C++ dans l'exemple Optimiseur de voyage Bing Maps

Décrit le composant C++ de l'optimiseur de voyage Bing Maps.

Interaction entre JavaScript et C++ dans l'exemple Optimiseur de voyage Bing Maps

Décrit comment les composants JavaScript et C++ de l'exemple de l'optimiseur de voyage Bing Maps interagissent.

Migration du code existant dans l'exemple Optimiseur de voyage Bing Maps

Met en évidence certaines des recommandations principales que nous avons suivies lorsque nous avons migré de la version ActiveX de l'optimiseur de voyage Bing Maps à une application Windows Store.

[Haut]

Ajouts de la communauté

Afficher:
© 2014 Microsoft