Ma structure MVC

Par Martin40, il y a 5 ans


Bonjour à tous,

Mon site (intranet) ayant de plus en plus grossi, je trouve que la structure que j'avais crée à la base, n'est plus pratique. Ce pourquoi j'aimerais en faire une autre et aimerais avoir vos avis.

Voici ma structure actuelle

Class Controller + app1 + app2 + app3 Css Images + app1 + app2 + app3 Js Library Model + app1 + app2 + app3 View + app1 + app1 + app1

Ce vers quoi je voudrais aller

Class Controller Apps + app1 + controller + model + view + images + js + css + app2 + controller + model + view + images + js + css + app3 + controller + model + view + images + js + css Css Images Js Library Model View

Pourquoi je veux faire ça

Premièrement, de base j'avais juste développé un intranet, est venu se greffer ensuite plusieurs web-app.

J'avais utilisé cette structure car ça ma permit de garder la même structure de site pour différentes applications (seuls les couleurs principales changent dans mon cas).

Je voudrais donc garder cette structure centrale mais que les applications ais également une structure bien à elle.

Que pensez vous de la structure vers laquelle je veux aller ? Vous auriez d'autres idées ?

2 réponses

segfault, il y a 5 ans

Hello,

La deuxièmes structure semble en effet plus logique, tu garde l'avantage de tout avoir au même endroit sans les inconvénients de devoir chercher dans 50 sous-dossiers pour trouver les vues de l'app1 par exemple. En plus avec cette structure tu pourra avoir des resources partagés entre les apps (tu le peux déjà avec la structure actuelle mais c'est moins évident).

Je ne sais pas si tu utilise un framework JS/bundler, mais si c'est le cas tu pourra séparé tes fichiers javascript et ne charger que le JS de app1 dans app1 par exemple

Martin40, il y a 5 ans

Salut, merci du retour.

Non je n'utilise pas de framework.

Je vais partir sur la deuxième structure, je vais encore réfléchir un peu à optimiser les choses ;)

Je vais en profiter pour retirer bootstrap et passer tout mon jQuery en javaScript dans mon projet.