Architecture d'un framework MVC

Architecture d'un framework MVC - PHP - Programmation

Marsh Posté le 16-07-2006 à 04:43:30    

Bonjour.
 
Ma question est d’ordre assez générale et concerne le fonctionnement d’un framework MVC.
 
Après avoir lu de la doc et du code source à ce propos, je pense avoir bien assimilé le principe de l’URL en tant que point d’entrée dans l’application PHP, parsée par le contrôleur qui détermine les modules à charger, les actions à exécuter, le template à afficher, etc.
 
Toutefois, un tel fonctionnement ne limite-t-il pas l’application à n’afficher qu’un seul module par page ?
 
Exemple : si je choisis de dédier une page complète du site à ma galerie photos, dans ce cas pas de problème je peux monopoliser les URL pour diriger l’application PHP, programmer les actions à exécuter etc. En revanche, si je veux que cette page contienne aussi d’autres modules dynamiques (disons les dernières news et un article), dans ce cas comment faire comprendre à l’application que d’accord, il faut qu’elle exécute l’action demandée par l’utilisateur sur la galerie photo, mais qu’elle doit aussi recharger les 10 dernières news et afficher l’article demandé ?
 
Je ne vois que deux solutions : surcharger l’URL avec les instructions de chargement des autres modules, ou bien opter pour une solution d’usine à gaz en mappant toute la structure du site dans un xml par exemple (ou yml, ou table mysql…) de telle sorte que le framework sache quoi charger par défaut.
 
Peut-on en envisager d’autres ? L’idée est de rester dans un framework « léger » et d’éviter les mappings à répétition.
 
Le framework JAZ semble apporter une réponse au problème par sa gestion du workflow et ses URL pré-codées, mais le fonctionnement exact en arrière-plan m’est encore inconnu… Si un expert JAZ passant par phpcs.com pouvait m’éclairer…
 
Voilà, si quelqu’un a une réponse, un commentaire ou un lien à apporter à tout ou partie du précédent message, qu’il/elle n’hésite pas !
 
Merci.
NemetraL.

Reply

Marsh Posté le 16-07-2006 à 04:43:30   

Reply

Marsh Posté le 16-07-2006 à 09:36:04    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed