IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mobiles Discussion :

Technologie à prendre pour développer une nouvelle application


Sujet :

Mobiles

  1. #1
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut Technologie à prendre pour développer une nouvelle application
    Bonjour tout le monde,

    Je sais que ce n'est pas la première fois que vous voyez passer ce type de message mais à chaque développement d'application ses contraintes ...

    Un ami et moi voudrions développer une application mobile en partant de zéro. Nous sommes tous les deux développeurs mais ne connaissons pas le monde des app Mobile. Donc je m'excuse d'avance si mes questions peuvent paraître bête à vos yeux.

    Voici les caractéristiques de l'application :
    - L'application devra être uniquement sur iOs et Android. On ne pourra pas y accéder depuis des URL.
    - Côté front on pourrait avoir 50 pages max. Les traitements seront très simple : Appel serveurs, affichage des résultats, accès à mes images IN/OUT, affichage d'image depuis le web (un peu comme Instagramme ou Pinterest
    - Côté back se trouvera le cœur de l'application. Donc le back doit être le plus sécurisé possible.
    => Question : pour que le back soit une boite noir je pensais à l'utilisation de web service. Pour les images je ne sais pas si c'est le meilleur choix par contre. Peut-on récupérer les informations des base de données via des WS et faire autrement pour les images ? (par exemple le WS renvoi une URL (WEB) et après on affiche l'image ... .
    - Nous voudrions pourquoi pas créer un startup si on réussi à aller jusqu'au bout du projet et si on gagne deux sous. Donc l'application devra être OpenSource ou le moins chère possible car nos moyens sont limités.
    - étant que deux il faudrait pouvoir développer le plus rapidement possible donc langage de haut niveau.
    - N'étant pas intégrateurs dans l'âme, la gestion des pages et leurs adaptations selon la taille de l'écran devra si possible être simple à gérer.


    J'ai déjà pu jeter un coup d'œil rapide sur : Kivy, Xamarin, sencha touch et AngularJs/firebase. Mais ne connaissant encore rien aux technologies mobile je ne sais pas ce qui peut le mieux nous convenir par rapport à ce qu'on voudrait développer.

    Pourriez-vous m'apporter votre expérience et vos conseils avisés ?

    Merci d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Salut,

    si tu veux réaliser une seule app pour deux plateformes, le trio HTML5/CSS3/JavaScript est un choix raisonnable. Le choix du framework final (jQuery, Angular, Sencha, etc) est plus une question de goût qu'autre chose.
    Xamarin propose de développe en C#, si tu connais ce langage c'est une voie à creuser.

    Pour les WebServices, tu peux passer ce que tu veux (évites quand même de balancer 40Go d'un bloc). Si souhaites écrire des WS en Java et les faire tourner chez un hébergeur (genre Infomaniak, OVH, etc), les tarifs sont violents (par rapport à du PHP).


    Tu développes en quel langage pour l'instant?

  3. #3
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut
    Bonjour,

    Mon ami a un serveur donc on n'aura pas besoin d'OVH.

    Tu me proposes de prendre l'option HTML5/CSS3/JavaScript. Mais c'est que pour le front (application qu'on peut télécharger depuis les Stors d'apple et de google) on est bien d'accord ?
    Pour le programmes côté serveur je peux employer ce que je veux ?

    Je vous parle de WebServices mais il y a quoi d'autre sur le marché ?
    Qu'est ce qui est plus rapide pour afficher des images dans une application depuis des URL sur le WEB ?

    Quand aux langage de dév que je métrise, même si tout les monde pense (à tord) que c'est de la .... j'ai déjà fait du J2EE/COBOL et actuellement je fais du C#/Cobol.
    Mes compétence sont assez spécifiques en fait.

  4. #4
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    Bonsoir,

    il y'a plusieurs options pour faire des applications mobiles natives, de mémoire :

    HTML/CSS
    - apache cordova
    - Telerik Nativescript

    c# Xamarin

    C++
    il parait qu'on peut faire des application mobiles en c++ dans visual studio mais je n'ai jamais testé personnellement .

    toutes ces solutions sont multi plateformes et produisent une application native que vous pourrez deployer sur les stores, pas une simple page html affichée dans un navigateur

    A mon humble avis cordova est la solution la plus accessible , gratuite et tres largement documentée est supportée .

    coté serveur , vous pouvez faire ça avec n'importe quel language/plateforme : Asp.net,Node.js/java....

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Citation Envoyé par rockley Voir le message
    Tu me proposes de prendre l'option HTML5/CSS3/JavaScript. Mais c'est que pour le front (application qu'on peut télécharger depuis les Stors d'apple et de google) on est bien d'accord ?
    Oui, c'est pour la partie application mobile.

    Citation Envoyé par rockley Voir le message
    Pour le programmes côté serveur je peux employer ce que je veux ?
    Du moment que le serveur propose ce que tu veux (j'enfonce une porte ouverte mais si ton serveur propose Apache+PHP, ça ne va pas être pratique pour des WS en Java)

    Citation Envoyé par rockley Voir le message
    Je vous parle de WebServices mais il y a quoi d'autre sur le marché ?
    WebSocket, appel d'url (ajax)

    Citation Envoyé par rockley Voir le message
    Qu'est ce qui est plus rapide pour afficher des images dans une application depuis des URL sur le WEB ?
    c'est à peu prés pareil, la lenteur vient du volume de données, du serveur et du débit de la connexion internet.

    Citation Envoyé par rockley Voir le message
    Quand aux langage de dév que je métrise, même si tout les monde pense (à tord) que c'est de la .... j'ai déjà fait du J2EE/COBOL et actuellement je fais du C#/Cobol.
    T'as déjà un bon background pour avancer sur ton projet (j'en connais qui pense que leur "maîtrise" de PowerPoint doit leur suffire à passer au développement d'une appli)

  6. #6
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut
    Bonjour,

    Avant tout merci pour vos réponses. ça m'aide beaucoup.

    Une dernière question avant de clôturer mon poste même si j'ai peu d'espoir que quelqu'un le sache.
    Savez-vous comme sont fait (quelle technologie) les sites Tinder ou pinterest ?
    Je ne sais pas quoi rechercher sur Google pour avoir l'information.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Salut,

    Citation Envoyé par rockley Voir le message
    Savez-vous comme sont fait (quelle technologie) les sites Tinder ou pinterest ?
    Je ne sais pas quoi rechercher sur Google pour avoir l'information.
    Les mots clefs "tinder programming language" semblent un point de départ valable. Mais il y a peu d'infos sur le sujet, les apps mobiles seraient écrites en Objective-C (pour iOs) et Java (pour Android).
    Coté backend, Pinterest se baserait sur Python et Django Web.

    Perso, je crois que prendre les mêmes technos que les "voisins" n'a de sens que si les besoins et les conditions sont similaires.
    Il vaut mieux regarder quels sont les besoins spécifiques et éliminer les technos qui ne les couvrent pas. Et éliminer celles sur lesquelles tu ne veux pas investir.
    (est-ce que tu veux commencer ton projet par apprendre Java, Objective-C, Python et Django?)

  8. #8
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut
    C'est vrai Gob0.ch, tu as tout a fait raison. Malheureusement quand on début on essaie de copier l'existant à défaut de comprendre tout les tenants et les aboutissants.
    Malgré tout avec votre aide et une petite semaine de recherche j'ai pu avancer un peu.

    J'ai trouvé ce site : http://mobile-frameworks-comparison-chart.com/
    C'est assez génial car on a un filtre sur le côté qui permet cibler ses besoins.

    Je commence donc :
    En plateform je coche iOS, Android et windows phone
    En Target je pends application Hybrid.
    En language je ne prends rien.
    En Hardware Features :
    J'ai besoin que l'utilisateur puisse prendre des photos ou charger des photos depuis ses images. J'ai besoin qu'il puisse également stocker des images dans "mes images". j'ai également besoin d'accéder aux contactes de la personne. J'aurai surement besoin de la géolocalisation ou du moins la possibilité de savoir depuis quelle ville la personne se connecte (je ne sais pas si on peut avoir l'information de la ville en utilisation "Connection"). J'ai enfin besoin des notifications.
    Donc j'ai coché :
    - Capture
    - Connection
    - Contacts
    - File
    - Geolocation
    - Notification

    Je ne comprends par contre pas à quoi peuvent servir "Storage" et "Gestures & multitouch"

    Pour ce qui est du "User Interface" et du "Advertissement" dans "Other" très franchement c'est du chinois pour moi.

    Dans la liste qui me reste j'ai éliminé les UI un peu exotiques.
    Il me reste donc trois FW (si ce que j'ai coché est correcte) :
    - ONSEN UI
    - PhoneGap
    - Xamarin (même si c'est payant ça reste abordable et je maitrise mieux le C# que HTLM5).

    Le problème que j'ai a ce stade, c'est que je ne sais pas comment choisir.
    Quelles sont les forces et les faiblesses de ces FW ? J'ai beaucoup de mal à trouver quelque chose de pertinent pour finir par faire mon choix.


    Enfin une question vraiment à la con mais j'ai du mal à comprendre :
    On voudrait que notre application hybride puisse fonctionner avec une mini BDD côté client. Avec mes pauvres connaissances je ne vois comment une application écrite en HTML5, CSS et JS pourrait gérer ça.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Bonjour,

    Citation Envoyé par rockley Voir le message
    C'est vrai Gob0.ch, tu as tout a fait raison. Malheureusement quand on début on essaie de copier l'existant à défaut de comprendre tout les tenants et les aboutissants.
    Ca reste un phénomène tout à fait humain, on apprend par mimétisme (regarde comment font les enfants)

    Citation Envoyé par rockley Voir le message
    Je ne comprends par contre pas à quoi peuvent servir "Storage" et "Gestures & multitouch"
    Storage: si tu as besoin de stocker des infos en local (autre que photo/video), tu as besoin de cette fonctionnalité (par exemple: les préférences utilisateurs)
    Gestures & multitouch: si tu as besoin de zoomer ou faire tourner, ton app doit pouvoir capturer ces gestes.

    Citation Envoyé par rockley Voir le message
    Pour ce qui est du "User Interface" et du "Advertissement" dans "Other" très franchement c'est du chinois pour moi.
    Dans User Interface, tu retrouves des possibilités pour "skinner" ton app, c'est à dire pouvoir choisir complètement le design au pixel près.
    Advertissement, c'est la pub via AdMod et iAd. Si ton appli doit afficher des pubs, tu en besoin aussi.

    Citation Envoyé par rockley Voir le message
    Dans la liste qui me reste j'ai éliminé les UI un peu exotiques.
    Il me reste donc trois FW (si ce que j'ai coché est correcte) :
    - ONSEN UI
    - PhoneGap
    - Xamarin (même si c'est payant ça reste abordable et je maitrise mieux le C# que HTLM5).
    Le problème que j'ai a ce stade, c'est que je ne sais pas comment choisir.
    Quelles sont les forces et les faiblesses de ces FW ? J'ai beaucoup de mal à trouver quelque chose de pertinent pour finir par faire mon choix.
    Globalement, tu as le même niveau de fonctionnalité dans les 3 cas. C'est simplement la façon d'écrire qui est différente. J'ai écrit un article sur le sujet, je me suis posé les mêmes questions
    Si tu es à l'aise avec C# et que le coût de Xamarin te convient, ma foi, fonces Je crois que tu peux tester avant d'acheter.

    Citation Envoyé par rockley Voir le message
    Enfin une question vraiment à la con mais j'ai du mal à comprendre :
    On voudrait que notre application hybride puisse fonctionner avec une mini BDD côté client. Avec mes pauvres connaissances je ne vois comment une application écrite en HTML5, CSS et JS pourrait gérer ça.
    En utilisant SQLite et le plugin Cordova cordova-sqlite-storage (par exemple). Sinon il y a le WebStorage API mais c'est du stockage "clé / valeur" donc un peu laborieux pour une BDD (ou de toute petite taille).

  10. #10
    Membre averti Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Points : 346
    Points
    346
    Par défaut
    Bonjour à tous,

    Je réponds assez tardivement mais la recherche prend du temps et je ne veux pas sur polluer mon poste en posant trop de questions.
    Tous d'abord merci beaucoup pour ton dernier message Gob0.ch ; ça m'a énormément aidé. (Soit dit en passant ton article est génial).
    Grace à (ou a cause de) toi j'ai exclu Xamarin car non compatible avec Linux.

    Je me suis donc beaucoup intéressé à Apache Codova récemment jusqu'à tomber sur Ionic :
    Je cite (source :grafikart) :
    "Ionic est un framework qui va vous permettre de créer des applications mobiles en utilisant des technologies Web. Ionic se base pour cela sur d'autres frameworks / technologies qui ont fait leurs preuves.
    •Gulp, pour la partie automatisation des compilations.
    •AngularJS, pour la partie front-end avec l'utilisation d'Angular UI Router pour la gestion des stats.
    •Apache Cordova, pour la création d'une application fonctionnelle sur mobile."


    La démo ci-dessous donner une impression assez sympa :


    C'est sous licence MIT, donc si j'ai bien compris c'est totalement gratuit et on peut en faire ce qu'on veut.
    La seule question que j'aurai à la limite ce serait de savoir si tous les éléments (plugins) qu'on voit dans la vidéo sont dispo sous Ubuntu. J'ai juste peur de ne pas avoir d'émulateur iOS. Mais pour ça il faut que je télécharge et que je teste un peu.

    Pour ma part, vous l'aurez donc compris, mon choix s'arrête pour le moment sur Ionic. Il faut encore que je teste pour voir si ça peut convenir mais la vitrine est alléchante

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 42
    Points
    42
    Par défaut
    Citation Envoyé par rockley Voir le message
    (Soit dit en passant ton article est génial).
    Merci!

    Citation Envoyé par rockley Voir le message
    Grace à (ou a cause de) toi j'ai exclu Xamarin car non compatible avec Linux.
    tout pareil. Et le coté "émulation via mono" sur Android ne m'a pas convaincu.

    Citation Envoyé par rockley Voir le message
    •Gulp, pour la partie automatisation des compilations.
    Automatiser la compilation, ok. Mais est-ce que Ionic propose le "hot deploy"? (c'est pas vraiment un argument contre, mais ça peut accélérer les tests)

    Citation Envoyé par rockley Voir le message
    •AngularJS, pour la partie front-end avec l'utilisation d'Angular UI Router pour la gestion des stats.
    Mouais, là je ne vois pas la plus-value de ionic? Intégrer AngularJS dans une app Cordova, c'est relativement simple (voir sur mon blog)

    Citation Envoyé par rockley Voir le message
    La seule question que j'aurai à la limite ce serait de savoir si tous les éléments (plugins) qu'on voit dans la vidéo sont dispo sous Ubuntu.
    Oui, puisque les plugins sont composés de JavaScript (et si besoin de Java + Objective-C pour la partie native). Donc ce n'est pas lié à l'OS.

    Citation Envoyé par rockley Voir le message
    J'ai juste peur de ne pas avoir d'émulateur iOS. Mais pour ça il faut que je télécharge et que je teste un peu.
    De toute façon, pour builder et déployer sur l'app store, faut un mac (un mac book air par cher fait le job)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/06/2011, 12h14
  2. Réponses: 58
    Dernier message: 29/10/2010, 12h35
  3. Réponses: 5
    Dernier message: 29/05/2009, 09h10
  4. Réponses: 1
    Dernier message: 08/01/2009, 18h34
  5. Réponses: 2
    Dernier message: 16/11/2008, 20h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo