Contrôleur appartient à la couche de Présentation?
J'ai entendu dire que contrôleur appartient à la couche de présentation. Comment est-il possible?
J'ai pensé que :
- vue de la présentation
- modèle est pour la logique métier
- contrôleur est pour le contrôle de logic
Est-il bon lien pour prouver que contrôleur appartient à la couche de présentation?
"Spring MVC est utilisé pour la couche de présentation": comment peut-on utiliser MVC seulement dans la couche de présentation?
Vous devez vous connecter pour publier un commentaire.
La couche de présentation contient des vues et contrôleurs.
Vous ne devez pas confondre une architecture MVC pour un multiniveaux/couche de l'architecture (en particulier une architecture 3 tiers). La plupart du temps Modèle/Vue/Contrôleur n'est pas le premier de la conception d'une application web, il est juste un sous-ensemble de couches ou de la couche de l'architecture.
Prendre un coup d'oeil à ce schéma simpliste (vous pourriez avoir le DAOs dans une Couche d'Accès aux Données, mais ce n'est pas important dans ce post) :
Spring MVC est un cadre de présentation : il traite avec les contrôleurs et les vues. Mais pourquoi le "M" de Spring MVC ? Tout simplement parce que, comme beaucoup d'autres la structure de présentation, naturellement il traite avec une représentation d'un modèle ou d'une entité ("M"). Cette représentation est utilisée dans vos contrôleurs, affichés dans votre point de vue, soumis dans vos formulaires, etc. C'est pourquoi le cadre est appelé Spring MVC, même si le modèle/de l'entité n'est pas une partie de la prensentation de la couche.
Je pense que c'est un bon nom pour ce Cadre, car il est vraiment "MVC" orienté. En effet la représentation d'un modèle ou d'une entité peut être :
Le printemps de la recommandation est d'utiliser directement le modèle/de l'entité ("M") objet :
C'est pourquoi je dis que le cadre est très "MVC" orienté par rapport à d'autres, comme Struts, où vous devez utiliser les différents objets de formulaire.
Quelques liens intéressants :
Le contrôleur contrôle le rpesentation couche logique. Pour tous le code de commerce, les opérations de cas d'utilisation, de la persistance, etc., généralement, il délègue à une couche de service.
Un typique de la façon de le faire est de mettre en œuvre des services transactionnels, comme le printemps des haricots, et d'injecter ces beans spring dans les contrôleurs. Typique de cas d'utilisation: créer un nouveau produit:
Il dépend en grande partie de la saveur de la MVC que vous utilisez, et dans quel environnement vous l'utilisez dans.
Par exemple, ASP.NET MVC est un pur motif de l'INTERFACE utilisateur, de sorte que tous trois éléments font partie de la présentation.
Cependant, dans la plupart des implémentations de la MVC, le Contrôleur interagit avec l'utilisateur, et est donc une partie de la couche d'INTERFACE utilisateur. Il permet de gérer appuie sur un bouton, et la saisie au clavier... mais dans de nombreux cas, le contrôleur est également responsable pour la connexion du Modèle et de la Vue.
Une vérité universelle, c'est que vous ne devriez PAS faire de la logique métier dans le contrôleur si vous ne pouvez pas l'aider. Où la logique commerciale qui existe dépend de nombreux facteurs. Il pourrait être une partie du modèle dans certaines implémentations, ou peut-être est-ce propre couche à l'extérieur de la MVC