Quelle est la différence de développement d'un site dans l'architecture MVC et 3-Tier ou N-tier?
-
27-09-2019 - |
Question
Quelle est la différence de développer un site Web MVC et 3 niveaux ou de l'architecture N-tier?
Quelle est la meilleure? Quels sont les avantages et les inconvénients?
La solution
Ils sont à peu près les mêmes, mais dans 3 niveaux, le niveau supérieur (présentation) ne communique directement avec la couche inférieure (persistance de données).
Dans le modèle-vue-contrôleur, théoriquement le modèle est censé « informer » la vue qu'il a changé de sorte que la vue peut mettre à jour. Cependant, cela est généralement pas un problème dans la plupart des applications Web parce qu'ils sont apatrides. Je ne sais pas si des architectures MVC PHP bien connus ont vues qui communiquent directement avec modèles ou vice-versa, mais si elles ne le font pas, il serait correct de dire qu'ils sont en fait trois niveaux.
Wikipedia dit:
À première vue, les trois niveaux peut semble similaire à la MVC (Model View Contrôleur) Concept; cependant, topologiquement ils sont différents. UNE règle fondamentale dans un à trois niveaux l'architecture est le niveau client jamais communique directement avec les données étage; dans un tout modèle à trois niveaux la communication doit passer par le niveau middleware. conceptuellement architecture à trois niveaux est linéaire. Cependant, l'architecture MVC est triangulaire: la vue envoie des mises à jour à le contrôleur, les mises à jour du contrôleur le modèle et la vue est mise à jour directement à partir du modèle.