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

Delphi Discussion :

Quelle architecture utiliser pour la création d'une application mobile de Tchat en ligne ?


Sujet :

Delphi

  1. #1
    Membre du Club

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 58
    Points : 43
    Points
    43
    Billets dans le blog
    1
    Par défaut Quelle architecture utiliser pour la création d'une application mobile de Tchat en ligne ?
    Bonjour !
    J'espère que vous allez bien ?

    Je voudrais vous soumettre une préoccupation. Je suis un peu nouveau dans le domaine et j'aimerais avoir vos avis et si possible une orientation.

    Préoccupation :

    J'aimerais développer une application mobile de Tchat instantanée en ligne. L'application dès le démarrage, devra demander à l'utilisateur de se connecter via son compte Google afin de s'inscrire et avoir accès au forum de discussion. L'application prendra alors juste les informations nécessaires pour créer le profil de l'utilisateur et l'afficher.

    Mais, je suis un peu perdu dans la marche à suivre.

    1- J'ai discuté avec quelques potes développeurs d'applications web qui me conseille d'utiliser du REST Full pour le codage de la partie serveur et Client mais comment utiliser ce dernier pour un hébergement mutualisé avec Delphi. J'ai appris que Delphi avait la possibilité de développer des WebServices mais peut-on déployer sur un tel serveur ?

    2- Comment faire pour envoyer les messages de façons instantanées alors que je n'ai qu'un hébergement web mutualisé....J'ai pensé à Firebase, Back4app et autres mais je me demande comment enregistrer les données utilisateur dans ma propre base.

    3- Pour mon Profil d'utilisateurs, quel format de données vous me conseillez ? Dois-je créer une classe TProfil ou autres...

    Merci beaucoup pour votre attention.

    PS : J'utilise Delphi Community 10.3.3

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    l'hébergement pour un programme Delphi est possible, pour un serveur REST, cela peut être sur Linux ou Windows, le problème c'est le prix, plus cher qu'un server Apache pour PHP.
    Sinon, ton propre PC, un bon firewall et une IPv6 publique fixe, peut-être un nom de domaine.

    Vu que cela passe par l'api Auth de Google, faudrait poursuivre avec des API Google mais sans serveur, cela semble compliqué,
    sur PC sur un LAN, je t'aurais dit une forme de Peer-to-Peer, j'avais bricolé un TChat qui faisait le scan des IP de son sous-réseau, j'avais même essayé un Broadcast UDP mais c'est pas possible en mobile.

    Sans serveur, je ne vois pas comment ça pourrait être réalisé, voir si il est possible d'utiliser un fichier ou un petite base de données stockés sur un compte Google.

    Pour la structure du code, il te faut identifier les "acteurs" et les "actions",
    étudiant, tu dois surement respecter des méthodes comme UML, faire tes diagrammes MLD, MOT ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    Il y a pas mal d'exemples sur Youtube, ça pourrait te donner des idées de mise en place.

    Pas de soucis pour le faire avec la CE, elle a tout ce qu'il faut. En revanche tu ne pourras faire la partie serveur si tu es hébergé sous du Linux puisque le compilateur n'est fourni qu'à partir des versions Enterprise. donc il faudra te contenter de EXE ou DLL Windows à mettre sur ton mutu à condition qu'il le gère.

    Tu peux aussi faire la partie cliente en Delphi, utiliser Firebase pour les notifications et la base de données et faire tes modules sources en PHP ou autre langage serveur selon ton choix d'hébergement.

    REST ou pas REST, c'est un peu une question bidon imposée par du marketing. En pratique tu prévois des URL accessibles en GET ou POSt pour tout ce dont tu as besoin et tu peux soit utiliser les composants d'accès directs aux couches réseau (TNetHttpClient / TNetHttpRequest), les classes (THttpClient / THttpRequest) ou bien entendu les composants REST (TRESTClient / TRESTRequest) si tu veux confier à Delphi le traitement des résultats et aller jusqu'à les obtenir sous forme de tables en mémoire, mais pour des simples envois/réceptions de textes, je ne suis pas certain qu'il faille aller si loin.

  4. #4
    Membre du Club

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 58
    Points : 43
    Points
    43
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    l'hébergement pour un programme Delphi est possible, pour un serveur REST, cela peut être sur Linux ou Windows, le problème c'est le prix, plus cher qu'un server Apache pour PHP.
    Sinon, ton propre PC, un bon firewall et une IPv6 publique fixe, peut-être un nom de domaine.

    Vu que cela passe par l'api Auth de Google, faudrait poursuivre avec des API Google mais sans serveur, cela semble compliqué,
    sur PC sur un LAN, je t'aurais dit une forme de Peer-to-Peer, j'avais bricolé un TChat qui faisait le scan des IP de son sous-réseau, j'avais même essayé un Broadcast UDP mais c'est pas possible en mobile.

    Sans serveur, je ne vois pas comment ça pourrait être réalisé, voir si il est possible d'utiliser un fichier ou un petite base de données stockés sur un compte Google.

    Pour la structure du code, il te faut identifier les "acteurs" et les "actions",
    étudiant, tu dois surement respecter des méthodes comme UML, faire tes diagrammes MLD, MOT ...
    Merci beaucoup pour vos suggestions ! Je vais en prendre note

  5. #5
    Membre du Club

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 58
    Points : 43
    Points
    43
    Billets dans le blog
    1
    Par défaut
    Tu peux aussi faire la partie cliente en Delphi, utiliser Firebase pour les notifications et la base de données et faire tes modules sources en PHP ou autre langage serveur selon ton choix d'hébergement.

    Merci beaucoup pour vos propositions. Si je devrais optez pour cette solution quel hébergeur me proposeriez-vous ?

  6. #6
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    Citation Envoyé par aso14 Voir le message
    Merci beaucoup pour vos propositions. Si je devrais optez pour cette solution quel hébergeur me proposeriez-vous ?
    Tous les hébergeurs proposent PHP sur leurs hébergements mutualités, donc peu importe en fait. Par contre si son nom est composé de deux chiffres identiques, surveiller les options offertes / payantes ou ajoutées aux factures après quelques mois parce qu'on aurait oublié de cliquer sur le lien d'annulation envoyé dans un mail jamais reçu.

  7. #7
    Membre du Club

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 58
    Points : 43
    Points
    43
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pprem Voir le message
    Tous les hébergeurs proposent PHP sur leurs hébergements mutualités, donc peu importe en fait. Par contre si son nom est composé de deux chiffres identiques, surveiller les options offertes / payantes ou ajoutées aux factures après quelques mois parce qu'on aurait oublié de cliquer sur le lien d'annulation envoyé dans un mail jamais reçu.
    Ok je comprends mieux ! Faisant quelques recherches, j'ai trouvé un hébegeur, du nom de AMEN. Est-ce que avec ça je peux développer entièrement la partie Serveur avec Delphi ? Parce que en ce qui concerne PHP , je ne sais pas encore très bien comment m'y prendre.


    Que pensez - vous de strapi ? Je peux l'utiliser ?

  8. #8
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    Citation Envoyé par aso14 Voir le message
    Ok je comprends mieux ! Faisant quelques recherches, j'ai trouvé un hébegeur, du nom de AMEN. Est-ce que avec ça je peux développer entièrement la partie Serveur avec Delphi ? Parce que en ce qui concerne PHP , je ne sais pas encore très bien comment m'y prendre.


    Que pensez - vous de strapi ? Je peux l'utiliser ?
    Si tu prends un hébergement Windows ça peut se faire puisque tu es avec la Community Edition. Regarde les librairies REST sur GitHub comme Delphi MVC Framework ou l'une des dizaines d'autres comme tu peux tenter avec WebBroker.

    N'ayant pas le compilateur Linux dans ta version tu ne pourras pas cibler un hébergement en Linux 64 bits.

  9. #9
    Membre du Club

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 58
    Points : 43
    Points
    43
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pprem Voir le message
    Si tu prends un hébergement Windows ça peut se faire puisque tu es avec la Community Edition. Regarde les librairies REST sur GitHub comme Delphi MVC Framework ou l'une des dizaines d'autres comme tu peux tenter avec WebBroker.

    N'ayant pas le compilateur Linux dans ta version tu ne pourras pas cibler un hébergement en Linux 64 bits.
    Merci beaucoup pour vos apports !!

Discussions similaires

  1. [Multi Plateforme] Aide pour la création d'une application mobile à lecteur de code barre
    Par sahya74 dans le forum Mon application mobile
    Réponses: 5
    Dernier message: 29/10/2015, 18h19
  2. Quel langage utiliser pour la création d'une roue d'ascendance ?
    Par apophiis dans le forum Langages de programmation
    Réponses: 0
    Dernier message: 12/12/2014, 11h25
  3. Aide pour la création d'une application : .NET ou Qt, WPF, etc.
    Par Nazka231 dans le forum Bibliothèques
    Réponses: 0
    Dernier message: 14/05/2010, 23h24
  4. Bonne méthode pour la création d'une application graphique cliente
    Par kayoum dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 22/01/2009, 12h12
  5. Conventions à utiliser pour la création d'une DLL
    Par Writer dans le forum Langage
    Réponses: 3
    Dernier message: 02/08/2005, 09h24

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