Formas Web tradicionales ASP .NET vs MVC

Como alguien con algunos beneficios y experiencia en aplicaciones cliente, ¿vale la pena volver atrás y aprender de la forma en que funcionan las páginas ASP .NET tradicionales, o está bien pasar directamente a ASP .NET MVC?

Estoy buscando trampas o trampas en mi conocimiento de C # general, que no sabré de la serie de screencast y cosas en el sitio ASP .NET.

    Aquí está lo mejor de MVC. Funciona más cerca de la base del marco que los formularios web ASP.NET normales. Entonces, al usar MVC y comprenderlo, comprenderá mejor cómo funcionan los WebForms. El problema con WebForms es que hay mucha magia y unos 6 años tratando de hacer que la Web funcione como Windows Forms, por lo que tiene la jerarquía del árbol de control y todo lo que se traduce a la Web. Con MVC obtienes el núcleo sin la influencia de WinForm.

    Así que comience con MVC, y podrá mudarse fácilmente a WebForms si es necesario.

    Estoy de acuerdo con Nick: MVC está mucho más cerca del paradigma web real y al usarlo te enfrentarás a cómo funciona realmente tu sitio web. WebForms aleja la mayoría de estas cosas de usted y, viniendo de un fondo de PHP, lo encontré realmente anti-intuitivo.

    Le sugiero que salte directamente a MVC y omita WebForms. Como se dijo, podrá volver si es necesario.

    ASP.Net Webforms es una abstracción completamente diferente del marco base que ASP.NET MVC. Con MVC tiene más control sobre lo que ocurre debajo de las cubiertas que con los formularios web de ASP.NET.

    En mi opinión, aprender diferentes formas de hacer las cosas te hará, por lo general, un mejor progtwigdor, pero en este caso podría haber cosas mejores que aprender.

    Depende de tus motivaciones Si va a venderse como desarrollador de ASP.NET, necesitará ambos.

    Si esto es solo por tu propio placer, entonces ve a MVC.

    Mi sensación personal es que los formularios web estarán disponibles durante bastantes años más. Mucha gente tiene tiempo y energía invertida en ellos. Sin embargo, creo que la gente lentamente (¡o tal vez no tan despacio!) Migrará. Webforms siempre fue solo una forma de obtener drag-and-drop VB4 morts para pensar en el desarrollo web. Funcionó muy bien pero le quita mucho control.

    ASP.NET MVC es para desarrolladores que desean desacoplar el código del cliente del código del servidor. He querido escribir JavaScript, XHTML, CSS clientes que pueden pasar de un servidor a otro (sin importar la tecnología del servidor). A los clientes les lleva mucho tiempo ajustarlos y terminarlos, así que querrá usarlos (y los subcomponentes) para tantos servidores como sea posible. Además, este desacoplamiento le permite a su servidor soportar cualquier tecnología de cliente que soporte HTTP y corchetes angulares (y / o JSON) como WPF / Silverlight. Sin ASP.NET MVC te forzaron a tener una relación hostil con todo el equipo de ASP.NET — pero Scott Guthrie es un tipo genial y trae MVC a la mesa después de años de sus predecesores (y tal vez el propio Scott) casi totalmente enfocado en hacer que los progtwigdores de Windows Forms escriban aplicaciones web.

    Antes de ASP.NET MVC, construí aplicaciones ASP.NET basadas principalmente en archivos ASHX — controladores HTTP. Puedo asegurarle que ninguna tienda de Microsoft “real” fomentaría este comportamiento. Es más fácil desde una perspectiva de administración (sabia) dictar que todos sus desarrolladores utilicen la forma recomendada por el vendedor de utilizar las herramientas del proveedor. Entonces, las tiendas de TI que tienen uno o dos años de retraso requerirán que conozcas la forma de hacer las cosas antes de MVC. Esto también es útil cuando tienes un sistema “heredado” para mantener.

    Pero, para el campo verde, ¡es MVC todo el camino!

    OMI, hay más trampas en escenarios de formularios web normales que con solo MVC. Viewstate y databinding pueden ser difíciles a veces.

    Pero para MVC, es simplemente simple forma publicar / render cosas de la vieja escuela. No es que sea malo, es simplemente diferente y también más limpio.

    Realmente no puedo hablar técnicamente sobre MVC versus “tradicional” ya que solo he usado el modelo tradicional hasta ahora. Por lo que he leído, no creo que uno sea muy superior al otro. Creo que una vez que “lo entiendes”, puedes ser muy productivo en ambos.

    Sin embargo, en términos prácticos, tomaría en consideración que la mayoría de los libros, ejemplos de códigos y aplicaciones existentes están escritos para la forma “tradicional”. Tiene más ayuda disponible y sus habilidades serán más útiles para los empleadores con aplicaciones existentes escritas de la manera “tradicional”.

    Si no sabe cómo o no tiene experiencia con la solicitud / respuesta web de nivel raw y la representación cruda html / css, entonces MVC sería un buen lugar para comenzar. Entonces comprenderá mejor los pros y los contras de ambos formularios web y mvc. Ambos estarán presentes en el futuro ya que ambos abordan necesidades diferentes.

    Aunque diré que webforms es una plataforma muy mal utilizada y abusada. Gran parte de la basura de “mirar sin código” les da mala fama a todos los que la usan. Dedique el tiempo necesario para comprenderlo y usarlo de manera adecuada; encontrará que se trata de una plataforma muy extensible y sólida.