Pierre's Embedded and Mobile Blog

Soulevons le capot des systèmes embarqués et mobiles

November, 2010

Posts
  • Pierre's Embedded and Mobile Blog

    [Windows Phone 7] Influencez le parcours Windows Phone 7 aux TechDays!

    • 0 Comments

    Les Techdays reviennent les 8, 9 et 10 février au palais des congrès, avec un joli lot de sessions Windows Phone 7 en prévision!

    Vous sentez vous l’âme d’un speaker? vous pouvez proposer des sessions! Tout est expliqué dans ce post du blog Techdays

    Vous êtes développeurs et vous avez envie qu’on traite spécifiquement certains sujets? Faites le savoir dans les commentaires ou en me contactant à travers ce blog ou sur twitter: @pierreca!

    Et inscrivez-vous à l’évènement !

    PS: je prend aussi les propositions et desiderata pour le parcours Robotique et Systèmes Embarqués!

  • Pierre's Embedded and Mobile Blog

    [Windows Phone 7] Applications métiers : les toolkits pour combler les lacunes du SDK

    • 0 Comments

     

    Disclaimer! à lire avant : La question qui tue : portabilité des applications métier de Windows Mobile 6.5 vers Windows Phone 7

    Tout professionnel qui développe des applications métier (Line of Business / LOB) pour mobile (quelque soit la plateforme) va chercher dans le SDK Windows Phone 7 un certain nombre de fonctionnalités… comme des outils de synchronisation online/offline, une base de données locale, la possibilité de tourner en background… Pour l’instant le SDK est avant tout orienté pour les applications grand public, ces fonctionnalités ne sont donc pas « de base » dedans. Ceci étant dit, l’ouverture vers Silverlight permet aujourd’hui de ce servir de certains frameworks de la communauté pour développer son application métier.

    Attention !!! la principale question à se poser est tout de même autour du déploiement : aujourd’hui le seul moyen de déploiement possible est marketplace, et c’est un marketplace publique !

    Implémenter complètement le pattern MVVM:

    Synchro Online/Offline : la solution Sync Framework 4

    Base de donnée locale :

    Protéger les données en les cryptant :

    Un exemple d’applications LOB avec webservice wcf, serialization JSON, potentiellement hébergée dans Azure et consommé sur Windows Phone 7, par Rob Tiffany (encore lui!):

    Applications en background :

    Il est aujourd’hui impossible de faire tourner une application tierce sous une autre application tierce – cependant il est quand même possible de les faire tourner sous l’écran de verrouillage ou quand le téléphone est en veille. Voici un article qui détaille comment faire

    Quelles sont les fonctionnalités qui manquent selon vous dans le SDK? Quels toolkits de la communauté utilisez-vous?

  • Pierre's Embedded and Mobile Blog

    F# dans Windows Phone 7: templates de projets, et un exemple

    • 1 Comments

    F# est un langage fonctionnel inspiré d’OCaml qui s’intègre dans la CLR et a la bonne idée, en étant fonctionnel, d’intégrer quand même un modèle de programmation objet, et en plus, des concepts de programmation parallèle et asynchrone assez bluffants… Assurément pas un langage mainstream, clairement pas voué à remplacer C# ou VB.NET, mais néanmoins intéressant pour comprendre l’évolution des langages, et dans pas mal de scénarios notamment quand il s’agit de se connecter et de traiter “naturellement” des sources de données. Si vous trouvez que LINQ c’est cool (c’est une syntaxe fonctionnelle intégrée à C#) vous allez kiffer F#… Pour en comprendre rapidement l’élégance je vous invite à regarder cette petite vidéo de Don Syme (qui en plus d’être un génie et Principal Researcher chez Microsoft Research est très pédagogue) ou pour aller tout de suite dans le coeur technique, sa session au TechEd. Autant vous prévenir, si vous êtes adapté à la programmation objet… ça peut piquer un peu. En tous cas moi ça pique encore…

    Maintenant admettons que vous voulez découvrir ce langage, voire que vous êtes déjà devenu fan de F#, et que vous voudriez en faire usage sur votre téléphone préféré: Il suffit d’utiliser les templates disponibles sur l’online gallery dans Visual Studio 2010.

    Pour cela, dans le wizard de création de nouveau projet (File –> New –> Project) il faut cliquer sur “Online Templates” puis faire une recherche sur F#… et vous obtenez ça:

    fsharp_wp7

    Lorsque vous cliquez sor OK vous obtenez la solution suivante:

    FsharpWP7Solution

    Le code F# se trouve dans le fichier “AppLogic.fs”. Comme vous pouvez le voir, l’application elle même a été séparée en 2 parties: le “host” n’est là que pour charger le code de l’appli elle même: le code C# ne fait qu’instancier un nouvel objet “App” qui est déclaré dans le code F# (le contexte de l’application, qui va lui-même charger la page principale).

    On peut voir dans le template comment se fait l’initialisation de cette page principale: c’est pour le moins rustique… on crée la page principale à partir du XAML, et ensuite on instancie directement les objets à afficher:

    do Application.LoadComponent(this, new System.Uri("/WindowsPhoneApp;component/MainPage.xaml", System.UriKind.Relative))
    
    // Bind named Xaml components relevant to this page.
    let appBarButton1 : ApplicationBarIconButton = this.ApplicationBar.Buttons.[0] |> unbox 
    let appBarButton2 : ApplicationBarIconButton = this.ApplicationBar.Buttons.[1] |> unbox  
    let results : TextBlock = this?Results
    
    // Set the behaviour of the buttons
    do appBarButton1.Click.Add(fun _ -> results.Text <- "Yes, I'm F#")
    do appBarButton2.Click.Add(fun _ -> results.Text <- "F# rocks!")
    

    A mon humble avis F# n’est pas tant fait pour ça que pour traiter les données qu’on pourrait avoir envie d’afficher dans l’application.. mais ça n’engage que moi. En tous cas ça montre qu’on peut tout faire avec F# Smile

    Reste ensuite à créer votre propre code et trouver la bonne utilisation de F# dans votre application. Si vous avez un traitement mathématique ou de classement/formatage sur des gros sets de données, ça peut être très intéressant, pas tant d’un point de vue performance que d’un point de vue simplicité et lisibilité du code… pour autant que vous pratiquiez régulièrement Smile

    Petit bémol, il se trouve que les helpers asynchrones dispos dans Microsoft.FSharp.Control.WebExtensions ne sont pas implémentés dans la version pour Windows Phone 7.. c’est sûrement temporaire mais c’est bien dommage, car on aurait pu alors simplifier certaines interactions avec des API webs (cf la démo de la plénière des MS Days par Mitsu Furuta (à 1h42m30s pour être précis)

    Pour le plaisir de ne pas fournir qu’un template tout vide, voici un petit générateur de fractale de Mandelbrot en F# pour Windows Phone 7 de mon cru! je pense qu’on peut un peu améliorer le code, je débute encore en F#… j’attends vos suggestions, notamment pour supprimer les mutables dans la boucle de calcul!

    Attention – pour profiter de F# il Visual Studio 2010 Pro et les outils F#!! Plus d’info sur http://www.fsharp.net

  • Pierre's Embedded and Mobile Blog

    [Windows Phone 7] Intégration dans un environnement SBS 2008

    • 0 Comments
    Pierre Chesne vient de publier sur son blog un tutorial complet pour intégrer des smartphones Windows Phone 7 dans vos environnements SBS (les solutions Serveurs de Microsoft pour les TPE/PME)

    La question principalement traitée étant “comment faire passer le certificat du serveur vers mon WP7”, c’est un article qui s’adapte particulièrement bien à d’autres scénarios. sans aucun doute une lecture rapide et enrichissante Smile

  • Pierre's Embedded and Mobile Blog

    [Windows Phone 7] Analyse de downloads, d’usage et obfuscation : c’est gratuit avec Runtime Intelligence, et Dotfuscator de PreEmptive Solutions

    • 0 Comments

    Vous voulez savoir combien d’utilisateurs ont téléchargé votre application? comment ils l’utilisent? pourquoi elle crashe inexplicablement quand c’est vos utilisateurs qui l’utilisent, et jamais vous? vous voulez obfusquer votre code et améliorer la protection de votre propriété intellectuelle? C’est maintenant facile et possible gratuitement en utilisant les produits de PreEmptive Solutions: Runtime Intelligence, et le Dotfuscator. Connu depuis longtemps par la communauté, car c’est le seul produit d’ISV externe à Microsoft intégré de base dans Visual Studio, c’est maintenant disponible pour Windows Phone 7!

    Concrètement, comment ça marche? votre code est instrumenté, et les données sont envoyées sur un compte que vous avez créé sur le site de Preemptive Solutions, site sur lequel vous pourrez par ailleurs demander à accéder à l’outil (il faut passer par le formulaire de contact pour l’instant)

    Pour en savoir plus, une petite vidéo de quelques minutes:

    Tutorial d’intégration de Runtime Intelligence et Dotfuscator

Page 1 of 1 (5 items)