[Build 2012] Partage de code entre Windows Phone 8 et Windows 8

October 30, 2012 -

Un post rapide pour vous parler de cette session sur le partage de code entre Windows Phone 8 et Windows 8. Je prendrai le temps de revenir dessus dans un article plus complet une fois que j’aurai un peu plus de recule et fait quelques exemples !

sharecode

Globalement, ce qu’il faut retenir, c’est que les deux plateformes sont en train de converger, avec l’apparition de WinPRT (Windows Phone Runtime) sous Windows Phone 8 qui est un sous ensemble des APIs WinRT (Windows Runtime) de Windows 8. Concrètement, on retrouve 3 sets d’API distincts sous Windows Phone 8 :

  • Framework .NET
  • Windows Phone Runtime
  • Native API : Direct3D, XAudio2, Media Foundation

Voilà un schéma résumant ces APIs :

WP_000185

En terme de stratégie, pour favoriser le partage de code entre les deux plateformes, il faut bien évidemment séparer au maximum la logique de l’application de l’UI. Pour ça, MVVM reste le pattern à utiliser en XAML. Pour partager du code .NET entre Windows Phone et Windows, on utilisera les Portable Class Libraries. Il est également possible d’utiliser des fichiers liés (add as link) ou un composants WinRT compilé (pas possible de référencer directement le projet dans Windows Phone 8, il faut aller chercher le .winmd!)

Concernant le code qui est “platform specific”, pas de recette miracle ni grosse nouveauté, on utilise la portable class library pour créer nos interfaces et derrière on fait de l’injection de dépendances dans chaque application.

Voilà ce qu’il faut retenir de cette session à ce stade. Plus d’info sur MSDN, sur cette page.

Stay tuned Winking smile

Julien

Comments

Share

Tags


Twitter


RT @seanmckmsft: We now have a feedback forum for #AzureKubernetesService at https://t.co/0isxSTIwhc. Please use this for feature requests…

July 21, 2018 07:20

Azure Container Registry Build Supports All Windows Versions (Preview of Preview) https://t.co/OCkqVP4S9v

July 19, 2018 09:53

How #Microsoft has evolved under Satya Nadella https://t.co/b2e9B6wWu0

July 19, 2018 09:33

@serbrech you've made my day! :)

July 16, 2018 07:07

RT @brendandburns: The @kubernetesio extension for @code now supports creating/integrating minikube clusters from the editor! (and a prett…

July 11, 2018 21:12

Un début de journée normal avec @SFR! @SFR_SAV je vous ai déjà contacté en privé. J'attends un remboursement pour l… https://t.co/6TxfWSJyzJ

July 11, 2018 05:22

@benjguin Moi je tourne à la bière belge ;-)

July 10, 2018 19:25

Introducing Dev Spaces for @Azure #Kubernetes Service https://t.co/nleSg9UrW0

July 10, 2018 10:16

RT @AbelSquidHead: Did you know you can create public projects in #VSTS now? Cool stuff!! https://t.co/IhdCfmNVEx

July 07, 2018 12:19

@SFR_SAV Vous ne pourrez rien me dire de plus que le service téléphonique, autant continuer en public que les gens… https://t.co/UxGr9SVVkW

July 06, 2018 17:28

@philippep92 @petitpatapouf @SFR_SAV @Laurent_MAILLOT @LafibreOrange Preneur ici aussi #Orange, on a voté l'autoris… https://t.co/6DmO566rR5

July 06, 2018 17:25

@philippep92 @petitpatapouf @SFR_SAV @Laurent_MAILLOT Idem dans le 94 à Gentilly. Le service client @SFR_SAV m'a di… https://t.co/eBF3N4H8PH

July 06, 2018 17:11

.@60millions @UFCquechoisir @Arcep est-ce qu'il y a des actions en cours pour régler les problèmes de qualité #SFRhttps://t.co/ZAsoN6POo6

July 06, 2018 16:54

A tous les gens qui ont des soucis avec #SFR, appelez le service client (@SFR / 1023), ils sont obligés de vous déd… https://t.co/1hkWgjjklV

July 06, 2018 16:51

Encore une panne générale de #SFR... Réponse de @SFR_SAV au téléphone: "on est en train de migrer nos clients ADSL… https://t.co/kQaE9pcC7T

July 06, 2018 16:49