Salut à toutes et à tous ! :)
Ma question est simpel (et peut-être un peu bête ?):
Je viens de mettre en place un système basique de middlewares, et je voulais savoir s'il vallait mieux rattacher ce système au Kernel (core) de l'app ou plutôt globalement à celle-ci (comme un module qui viendrait se greffer à app) ? Parce que pour l'instant je l'ai plus conçu comme une sorte de greffon ayant son propre autoloader (et namespace ça va de soi).
C'est peut-être un peu tordu mais c'est une question d'organisation de mon code.
Merci pour vos retours :)
Salut,
personnellement, je le metterai dans le core. En fait, tout dépend de l'implémentation de ton routeur (et dispacher, si il est séparé du routeur).
@Forever: Je n'ai pas de dispatcher, d'ailleurs quelle serait la fonction du dispatcher ?
Mon router est dans mon kernel justement :)
Après je pense que je vais l'utiliser comme greffon, cad que ce sont des classes génériques que je viens greffer à mon app existante :)
Un dispatcher est utilisé pour agir en fonction de la route choisis par le routeur. En gros, le routeur reçoit l'URL, la traite, et dit au dispatcher "Bouge toi et vas appeller la méthode suivante dans la classe suivante", ou même l'erreur suivante (qui peut bien entendu être un controlleur).
En gros, le routeur décide et le dispatcher agit. C'est utile pour créer un routeur universelle, il ne se soucit pas de ce qu'il faut faire, il passe juste le message au Dispatcher.
Une alternative au dispatcher est dire au routeur d'appeller une closure quand x route est effectué.
@forever: D'accord, merci pour ton explication. J'utilise les closures dans mon cas.
Je pense écrire un article sur mon système basique de middleware histoire que ça puisse profiter à tout le monde:)