Il s'agit d'une question sur l'architecture d'application web MVC, et comment elle peut être étendue pour gérer des unités de fonctionnalité modérément complexes. Je possède une application Web de style MVC avec une page de facturation de carte de crédit pour le client.Composant de fonctionnalités complexes dans une application Web MVC
On m'a demandé d'autoriser les admins à entrer également les paiements par carte de crédit, pour les périodes où les cartes de crédit sont prises par téléphone.
La section de facturation de carte de crédit du client du site Web est actuellement son propre contrôleur, avec environ 3 pages et un login. Ce contrôleur est responsable de:
- authentification des informations d'identification de connexion client
- collecte de données de carte de crédit
- L'appel d'une bibliothèque pour faire la charge réelle.
- en rapportant les résultats à l'utilisateur.
Je voudrais extraire les pages de collecte de données de carte dans un composant de une sorte pour que je puisse facilement réutiliser le code sur le côté admin de l'application.
À l'heure actuelle, mes composants sont limités à des pages «vues» uniques avec le code Perl de style PHP.
Ceci est un framework MVC simple et personnalisé écrit en Perl. À l'heure actuelle, les contrôleurs sont appelés directement depuis l'infrastructure pour traiter les demandes Web. Mon idée est de permettre aux contrôleurs d'être appelés à partir d'autres contrôleurs, de sorte que je peux composer des fonctionnalités plus complexes. Pour simplifier, je pense que je préfère la composition à l'héritage, même s'il faudra écrire un tas de méthodes passives (actions). Étant Perl, je pourrais dans la théorie faire l'héritage multiple. Je me demande si quelqu'un avec de l'expérience dans d'autres frameworks web MVC peut commenter sur la façon dont ce genre de chose est habituellement fait.
Merci.
Je pense que nous parlons de la même chose, bien qu'il ne soit pas clair que je veux inclure l'interface HTML dans le composant, c'est pourquoi je parle en termes de contrôleurs (et de leurs vues) et pas seulement -end classes de travailleurs. – NXT