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

Angular Discussion :

appli angular avec backend php : quelles sont les bonnes pratiques


Sujet :

Angular

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut appli angular avec backend php : quelles sont les bonnes pratiques
    Bonjour à tous,

    Aujourd'hui j'ai une application qui fonctionne de manière classique, à savoir un dossier pour l'appli contenant d'un côté les dossiers/fichiers backend (php) et de l'autre un dossier avec les dossiers/fichiers frontend (extJs). En gros les fichiers JS appellent/exécutent en ajax des fichiers/fonctions php qui eux interrogent une BDD sql et renvoient un json qui est par la suite interprété par le js (sur extJs tout est js, même l'affichage est en js, pas de html).

    L'idée est de se moderniser et nous avons décider de remplacer extJs par, vous l'aurez compris, Angular

    Donc j'ai bien compris qu'avec Angular on ne peux pas fonctionner de la même manière : celui ci interroge le Back telle une api. En gros plutôt que d’exécuter des fichiers php via un chemin, il envoi une requête http (qui s’effectuerait si je ne m'abuse via un service et à l'aide de httpClient)

    Là je vous entends dire "mais qu'est ce qu'il veut savoir à la fin ?! il a déjà tout compris !"

    En fait ma question porte sur l’arborescence des fichiers/dossiers et plus particulièrement sur la mise en place de l'API.
    Est il possible (et est ce une bonne pratique surtout ?) de mettre les fichiers de mon API (qui se trouvent être à quelques choses prêt tout les fichiers php de la future ancienne appli (vous me suivez ?^^) dans un dossier et y mettre à coté les fichiers front Angular ? Ca me parait bizarre que le front lance une requête http pour interroger un server qui se trouve être physiquement ... juste à côté, j'ai peur que cela pose des problème de fonctionnement. Mais d'un autre côté ce serai plus pratique il me semble. Ou est-il préférable de tout bien séparer ?

    Bref qu'en pensez-vous ?

    De plus sachez que j'accepte tout les bons conseils sur la mise en place de l'api/angular ^^

    Merci d'avance

    Eric

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 554
    Par défaut
    si dans la 1re version de votre application, le code php est lancé par un appel ajax cela veut aussi dire que les fichiers php sont appelé par une requête http.
    si j'ai bien compris, avec la 1re version, vous avez des url dans le genre https:/serveur/repertoire_admin/creer_utilisateur.php et avec la 2e version les url sont du genre https:/serveur2/admin/utilisateur, c'est bien ça ?
    dans le 2e cas, vous pouvez exécuter le même code php, il y aura juste un système de réécriture d'url pour trouver quel code exécuter en fonction de l'url.

    pour l'organisation des fichiers, le plus important est que vous vous retrouvez quand vous allez devoir ajouter une fonctionnalité après 6 mois sans avoir travailler dessus. vos choix de technologie client ou serveur ne devraient pas influencer cette organisation.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    Merci @mathieu pour ta réponse

    "si j'ai bien compris, avec la 1re version, vous avez des url dans le genre https:/serveur/repertoire_admin/creer_utilisateur.php"
    : pas tout à fait, les appels sont plutôt de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "chemin_relatif/nom_du_fichier.php?action=myAction&class=myClass"
    mais c'est surement propre à extJs.

    "avec la 2e version les url sont du genre https:/serveur2/admin/utilisateur"
    : oui c'est ça

    pour l'organisation des fichiers, le plus important est que vous vous retrouvez quand vous allez devoir ajouter une fonctionnalité après 6 mois sans avoir travailler dessus. vos choix de technologie client ou serveur ne devraient pas influencer cette organisation.
    : ah d'accord, donc pas de contre indication à mettre l'api dans le même dossier que le sous dossier angular ?

    MainDossierNiveau0AppliV2 ___ SousDossierNiveau1BackEnd

    ________________________________ SousDossierNiveau1Angular
    je résume car mon schéma n'est pas super clair ^^ les sous dossiers SousDossierNiveau1BackEnd et SousDossierNiveau1Angular sont dans MainDossierNiveau0AppliV2 et ainsi SousDossierNiveau1Angular va requêter dans le dossier de l'api SousDossierNiveau1BackEnd

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Par défaut
    d'après ce que j'ai cru comprendre, je peux peut être répondre à coté.

    fichier js et php sur le même serveur.
    tout ce qui est .js (donc angular) tourne sur le navigateur et donc effectue une requête à partir du navigateur de l'utilisateur vers le serveur à distance.
    à savoir que le serveur se contente juste d'envoyer les fichier .js (ou angular) au navigateur de l'utilisateur, à charge au navigateur de faire tourner le .js

    c'est donc un fonctionnement diffèrent de php ou java

    donc il n'y a pas d'intérêt de mettre au même endroit le back et le front mais bon ça peut fonctionner aussi ainsi.

    la bonne pratique est plutôt de séparer, le front sur un serveur, le back sur un autre.
    pour des raisons de maintenance et de mise à jour.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    Merci pour ta réponse @Krakatoa

    "donc il n'y a pas d'intérêt de mettre au même endroit le back et le front ..."

    Disons que l'intérêt que je vois c'est justement pour une question de mise à jour :
    Dans la mesure où ici le back et le front sont intimement liés, l'un sans l'autre est inutile et qu'on va être souvent amené à modifier le front et le back pour une même fonctionnalité, c'est plus pratique d'avoir tous les fichiers dans un même dossier. De plus en séparant les 2, le gittage se fera en 2 fois à chaque fois, alors que là en ayant tous sous la main, un push mettra tout à jour.

    Qu'en pense tu ?

Discussions similaires

  1. [Python 3.X] Import dans des modules? Comment faire et quelles sont les bonnes pratiques?
    Par Davjack dans le forum Général Python
    Réponses: 2
    Dernier message: 03/07/2014, 12h13
  2. Réponses: 33
    Dernier message: 18/04/2009, 12h36
  3. Réponses: 7
    Dernier message: 23/03/2009, 22h38
  4. Quelles sont les bonnes pratiques avec Zend Framework ?
    Par Community Management dans le forum Zend Framework
    Réponses: 14
    Dernier message: 02/02/2009, 20h35
  5. [C#/ASP.Net/DAL] Quelles sont les bonnes pratiques ?
    Par fouhaa dans le forum Accès aux données
    Réponses: 4
    Dernier message: 13/07/2006, 23h54

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