Bonsoir HFR
Ce soir, je viens vous poser une nouvelle colle...
J'avais commencé, il y a quelques années, une ébauche d'application Windows Forms en C#, .NET 4.5, connectée à une base SQL... puis, boulot oblige, j'ai fini par laisser un peu tomber le projet...
Avec tout ce qui arrive actuellement et prochainement sur la plateforme Microsoft, j'ai bien envie de m'y remettre, mais en ratissant plus large... J'aimerai ainsi partir sur une application "universelle", pour Windows 10 et Windows 10 Mobile, à la manière d'HFR10, pour ne citer que celle-ci
Le background de l'application :
C'est une petite appli répondant à un besoin personnel. J'aimerai pouvoir gérer mes collections d'objets / livres / films / jeux, de manière informatisée et partagée avec les copains.
L'application Collecto pour Windows Phone 8 fait très bien le travail, mais j'aimerai pousser un peu le vice en ajoutant quelques fonctions sympas :
- la sauvegarde des données sur un compte tiers (le compte MS et OneDrive me semble parfaitement indiqué), plutôt que dans une base SQL ou un fichier de données local.
- un système de partage où on pourrait gérer les prêts (j'ai prêté tel livre à tel ou tel ami / j'ai actuellement ce film, qui appartient à tel ou tel copain)
- une application universelle avec consultation et édition depuis le mobile et le PC (lien = compte Microsoft)
- 2 ou 3 gadgets rigolos à exploiter (reconnaissances de codes barres, recherche Bing/Google/Imdb/Amazon..., pourquoi pas du NFC pour les objets concernés, de l'import/export sous plusieurs formats....)
La solution existante :
Partons sur une nouvelle solution propre, en 4.5.x/4.6, avec Visual Studio 2015 Community, TFS/Git etc... Je ne garde rien (si ce n'est les concepts et les idées) du vieux projet Winform.
Je ne suis donc plus vraiment limité techniquement, je suis ouvert à toutes vos propositions.
Background technique :
J'ai environ 5 ans de .NET au bout des doigts, je devrai réussir à me débrouiller à implémenter toutes les fonctionnalités dont je pourrai avoir besoin. Pour les plus techniques, on trouve LARGE de quoi se débrouiller sur le net (stackoverflow, MSDN, forums...), je ne m'inquiète pas trop. J'ai à ma disposition quelques téléphones Windows 10 Mobile, des PC Windows 10 Pro et des tablettes Windows 10, de manière à m'assurer que mon appli passe sur tous les supports désirés.
La problématique :
Voilà le cœur de la question : l'accès aux données.
J'aimerai que les données saisies par l'utilisateur (ses collections, les items de ces collections, les photos, les préférences etc...) soient stockées quelque part en ligne, de la manière la plus transparente possible, de sorte qu'il puisse y accéder sur son mobile et sur son PC en ligne. Je n'ai pas envie d'héberger ou de payer un hébergeur pour rendre disponible une base de données SQL Server H24. Je pense donc qu'il me vaut mieux partir sur un stockage OneDrive ou autre solution de stockage en ligne.
Partant de ça, que me conseillez-vous :
- Travailler sur des données locales (fichier .mdf / .xml / .csv / autre / perso) que j'uploade à la demande de l'utilisateur sur son compte OneDrive. Les données sont ainsi disponibles 100% sur le périphérique (pas de connexion requise dans l'immédiat), mais risque de non synchronisation entre les appareils et risque de perte de données si téléphone volé/perdu/planté [application exemple : MyCar pour Windows Phone 8] ?
- Travailler sur des données en ligne (base de données SQL / webservice / post de data / fichier collaboratif...). J'aimerai éviter ces solutions coûteuses pour moi et tributaire d'un prestataire tiers dans la chaine... De plus ça pourrait nécessiter que l'utilisateur expose ses données, et lui demande une connexion data parfaitement disponible (pour ça, je peux imaginer des solutions de mises en cache à la limite...) [application exemple : la plupart des applis pro / webmails / services de banque en ligne...]
- Ecriture des données en temps réel sur le OneDrive / Facebook / compte tiers de l'utilisateur ? Ca demande aussi de la data correcte, mais c'est transparent pour l'utilisateur, ça n'apparaît même pas dans ses fichiers OneDrive, à l'image des sauvegardes de jeux [application exemple : Package Tracker / Candy Crush Saga....]
- Upload à intervalles réguliers sur FTP ? Ca me parait un peu archaïque comme solution... et ça demande un service / tâche planifiée / programme externe... Pas évident de faire ça en appli moderne... [application exemple : applis pro / progiciels spécifiques, avec uploade aux heures creuses...]
Voilà voilà, j'attends vos avis avec impatience
Bonne soirée à tous
Damien
---------------
La DiBerie | Rehost | Link