1
votes

Quelle est la structure correcte pour express js?

Je crée une application de pile moyenne Comment créer une source backend structurée Comme: contrôleur, modèle, route..etc en utilisant express js. J'ai besoin de quelques exemples?


0 commentaires

3 Réponses :


1
votes

Dans notre projet, nous avons une structure comme celle-ci:

server/
   /common
   /config
   /controllers
   /middlewares
   /models
   /routes
   /tests

Dans le répertoire commun, vous pouvez conserver toutes les fonctions d'assistance ou constantes courantes.
Dans le répertoire de configuration, comme son nom l'indique, vous pouvez mettre toutes les configurations.
Dans les contrôleurs, vous conservez vos contrôleurs.
Le répertoire Middlewares est l'endroit où vous pouvez conserver vos middlewares personnalisés que vous souhaitez exécuter avant le contrôleur exact.
Modèles est l'endroit où vous conservez vos schémas.
Routes est l'endroit où vous conservez les routes / points de terminaison.
Test est l'endroit où vous effectuez les tests.


0 commentaires

2
votes

En fait, il n'y a pas de structure "correcte" pour express. Mais il existe de nombreuses approches recommandées. Et c'est à vous. Je vous recommande de lire autour de vous pour structurer les projets NodeJS. Mais pour votre cas, je recommanderais quelque chose comme suit:

public
views
models
routes
    - index.js # This will hold all routes coagulated into one.
utils          # Utility methods expressed as functions so that you can import them individually
app.js         # This will hold all express bootstrapping code.

Pour la lecture, je recommanderai ce qui suit:

En fin de compte, il convient de noter que ce ne sont que des recommandations et que la structure finale sera ce qui convient le mieux à votre projet, à votre client et à votre équipe.


0 commentaires

2
votes

Tout d'abord, il n'y a pas une façon de faire les choses.

D'après mon expérience, il vaut mieux séparer par fonctionnalité métier que par catégorie technique. Pourquoi? Parce que cela donne plus de contexte à des choses qui vont ensemble au niveau fonctionnel plutôt qu'au niveau technique. En outre, cela vous permet de moins basculer entre les principaux emplacements de votre structure de répertoires. Cela réduit la charge cognitive, améliorant ainsi vos performances.

À titre d'exemple, disons que nous créons un site Web de blog. Vous devez seulement séparer en fonction des parties fonctionnelles au lieu de techniques. Cela vous permet de n'avoir qu'un seul répertoire ouvert et de vous concentrer sur la tâche à accomplir.

Bien sûr, vous partagerez certaines choses entre vos modules fonctionnels, ceux-ci que vous mettez dans un common code > place.

Ce serait mon approche:

src/
  common/
    db.js
    config.js
  profile/
    User.model.js
    Profile.model.js
    register.route.js
    register.tpl.js
    login.route.js
    login.tpl.js
    forgotten.route.js
    forgotten.tpl.js
  post/
    Post.model.js
    create.route.js
    create.tpl.js
    edit.route.js
    edit.tpl.js


0 commentaires