164 votes

Plus grand avantage à l’utilisation de formulaires web de ASP.Net MVC vs

Quels sont certains des avantages de l’utilisation de l’un sur l’autre ?

165voto

cvs Points 1008

Les principaux avantages de ASP.net MVC :

  1. Permet le plein contrôle sur le rendu HTML.

  2. Fournit nettoyer la séparation des préoccupations(SoC).

  3. Permet le Test Driven Development (TDD).

  4. Intégration facile avec les frameworks JavaScript.

  5. À la suite de la conception de apatrides nature du web.

  6. Reposant url qui permet de RÉFÉRENCEMENT.

  7. Pas de ViewState et des événements de Publication

Le principal avantage de ASP.net Formulaire Web sont:

  1. Il fournit RAD développement

  2. Facile modèle de développement pour les développeurs ceux qui viennent de développement winform.

91voto

J.C. Points 1649

ASP.NET des Formulaires Web et MVC sont deux frameworks web développé par Microsoft - ils sont deux bons choix. Aucun des frameworks web sont à remplacer par l'autre, ni est-il prévu de les faire "fusionnées" dans un cadre unique. La poursuite du soutien et de développement sont menés en parallèle par Microsoft et ne sera ni "going away".

Chacun de ces frameworks web offre des avantages/inconvénients - qui doivent être considérés lors du développement d'une application web. Une application web peut être développé en utilisant soit la technologie, il pourrait rendre le développement d'une application en particulier faciliter la sélection d'une technologie par rapport à l'autre et vice versa.

ASP.NET Formulaires Web:

  • Du soutien à l'élaboration de l'état • Donne l'illusion qu'une application web est conscient de ce que l'utilisateur a fait, semblables à des applications Windows. I. e. Fait de 'l'assistant de fonctionnalités un peu plus facile à mettre en œuvre. Des formulaires Web, qui fait un excellent travail en se cachant beaucoup de la complexité de la part du développeur.
  • Développement rapide d'Application (RAD) • La capacité à "faire le saut "dans" et commencent à offrir des formulaires web. Ce fait est contesté par une partie de la MVC de la communauté, mais poussé par Microsoft. En fin de compte, il s'agit du niveau d'expertise du développeur et de ce qu'ils sont à l'aise avec. Le modèle de formulaires web a probablement moins d'une courbe d'apprentissage pour les développeurs moins expérimentés.
  • Plus de contrôle de la boîte à outils • ASP.NET Formulaires Web offre une beaucoup plus grande et plus robuste boîte à outils (contrôle web) alors que MVC offre une plus primitives de contrôle s'appuyant davantage sur la riche contrôles côté client via jQuery (Javascript).
  • Mature • Il a été autour depuis 2002 et il ya une abondance d'informations en ce qui concerne les questions, les problèmes, etc. Offre plus de contrôle tiers - nécessité de tenir compte de votre existant boîtes à outils.

ASP.NET MVC:

  • La séparation des préoccupations (SoC) • À partir d'un point de vue technique, l'organisation du code au sein de MVC est très propre, organisé et précis, rendant plus facile (je l'espère) pour une application web à l'échelle en termes de fonctionnalité. Favorise la grande conception dans l'optique du développement.
  • Ce qui facilite l'intégration avec le client d'outils (interface utilisateur riche outils) • Plus que jamais, les applications web sont de plus en plus en train de devenir aussi riche que les applications que vous voyez sur votre bureau. Avec MVC, il vous donne la possibilité de s'intégrer à ces boîtes à outils (comme jQuery) avec plus de facilité et plus homogène que dans les Formulaires Web.
  • Optimisation des Moteurs de recherche (SEO) / Apatrides • Les URL sont plus convivial pour les moteurs de recherche (c'est à dire mywebapplication.com/users/ 1 - récupérer de l'utilisateur avec l'ID 1 vs mywebapplication/utilisateurs/getuser.aspx (id passé en session)). De même, depuis MVC est apatride, ce qui supprime les maux de tête d'utilisateurs qui spawn de multiples navigateurs web à partir de la même fenêtre (session de collisions). Le long de ces mêmes lignes, MVC adhère aux apatrides protocole web plutôt que "luttant" contre elle.
  • Fonctionne bien avec les développeurs qui ont besoin d'un haut degré de contrôle • De nombreux contrôles dans ASP.NET des formulaires web de générer automatiquement une grande partie de l'HTML brut, vous voyez, quand une page est affichée. Cela peut causer des maux de tête pour les développeurs. Avec MVC, il se prête mieux en vue d'avoir un contrôle complet avec ce qui est rendu et il n'y a pas de surprises. Encore plus important, c'est que les formulaires HTML sont généralement beaucoup plus petits que les formulaires Web qui peut s'assimiler à un boost de performance - quelque chose à considérer sérieusement.
  • Développement Piloté par les tests (TDD) • Avec MVC, vous pouvez créer plus facilement des tests pour le web côté des choses. Une couche supplémentaire de tests vous fournir encore une autre couche de défense contre un comportement inattendu.

L'authentification, l'autorisation, la configuration, la compilation et de déploiement, sont toutes des caractéristiques qui sont partagés entre les deux frameworks web.

17voto

Kevin Farrow Points 211

Quiconque est assez vieux pour se rappeler classique ASP rappeler le cauchemar de l'ouverture d'une page avec du code mixte dans le html et le javascript - même la page la plus petite a été une douleur pour comprendre ce que le diable qu'il était en train de faire. Je peux me tromper, et j'espère que je suis, mais MVC ressemble à revenir à ces mauvais jours.

Lorsque ASP.Net est venu le long, il a été salué comme le sauveur, en séparant le code à partir du contenu et nous permettre d'avoir des concepteurs web de créer le code html et des codeurs de travail sur le code derrière. Si nous ne voulons pas utiliser de ViewState, nous avons éteint. Si nous ne voulons pas utiliser le code derrière pour une raison quelconque, nous pourrions placer notre code dans le html classique ASP. Si nous ne voulons pas utiliser de Publication nous avons redirigé vers une autre page pour le traitement. Si l'on ne voulait pas l'utiliser ASP.Net les contrôles, nous avons utilisé la norme html contrôles. On pourrait même s'interroger sur la Réponse de l'objet si l'on ne voulait pas l'utiliser ASP.Net runat="server" sur nos contrôles.

Maintenant, quelqu'un dans leur grande sagesse (probablement quelqu'un qui n'a jamais programmé classique ASP) a décidé qu'il est temps de revenir à l'époque de mélange de code avec le contenu et l'appeler "la séparation des préoccupations". Bien sûr, vous pouvez créer plus propre html, mais vous pouvez avec ASP classique. Pour dire "vous n'êtes pas de la programmation correctement si vous avez trop de code à l'intérieur de votre point de vue", c'est comme dire "si vous avez écrit bien structuré et commenté code en ASP classique, il est beaucoup plus propre et mieux que ASP.NET"

Si je voulais revenir à un mélange de code avec le contenu que je le regarde en développement à l'aide de PHP qui a une beaucoup plus mature de l'environnement pour ce genre de développement. Si il y a beaucoup de problèmes avec ASP.NET alors pourquoi ne pas résoudre ces problèmes?

Dernier mais non le moindre, le nouveau moteur de Rasoir signifie qu'il est encore plus difficile de distinguer entre le html et le code. Au moins on pourrait chercher d'ouverture et de fermeture c'est à dire les balises <% et %> en ASP, mais maintenant, la seule indication sera le symbole@.

Il serait peut-être temps de passer à PHP, et attendre encore 10 ans pour quelqu'un de séparer le code à partir du contenu une fois de plus.

14voto

Simon_Weaver Points 31141

Si vous travaillez avec d’autres développeurs, tels que PHP ou JSP (et je devine que rails) - vous allez avoir une beaucoup plus facile temps convertir ou collaborer aux pages parce que vous n’ont tous ces événements ASP.NET « méchants » et contrôle partout.

13voto

Merc Points 131

Le problème avec MVC est que même pour les « experts », elle mange beaucoup de temps précieux et nécessite beaucoup d’efforts. Quelle que soit la technologie sous-jacente, entreprises résultent de la chose fondamentale « Solution rapide qui fonctionne ». Formulaires Web est une technologie RAD qui permet d’économiser temps et argent. Tout ce qui nécessite plus de temps n’est pas acceptable par les entreprises.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X