Cuando inicié mis estudios de programación web pensé que la tecnología webforms era la mejor. No creía que haya algo mas fácil que jalar los controles a un espacio que resultará ser nuestra página y empezar a programar por eventos, es decir, programar igual que con winforms de visual studio.
Cuando me indicaron en la empresa que estoy trabajando que ahí se usaba MVC no podía creer porque se complicaban tanto ya que en MVC no se "ve" lo que va a salir en el navegador. No podía creer que prefieran un tipo de programación complicada en la que al presionar un botón no se genere un evento (algo tan fácil) para crear un ActionResult con el verbo HttpPost (algo mucho mucho mas complicado).
Esto me llevó a pensar y buscar las diferencias entre ambos marcos de trabajo.
Web Forms ASP.NET MVC y dos marcos web desarrollados por Microsoft - ambos son buenas opciones. Ninguno de los dos frameworks web son para ser reemplazado por el otro ni hay planes para 'fusionarlos' en un marco único (Ni creo que haya forma de hacerlo) Ambos tienen departamentos que apoyan y desarrollan en paralelo en Microsoft y tampoco 'van a desaparecer ".
Cada uno de estos marcos web ofrece ventajas / desventajas - algunos de los cuales deben tenerse en cuenta en el desarrollo de una aplicación web. Una aplicación web puede ser desarrollado utilizando la tecnología - que podría hacer que el desarrollo de una aplicación particular de seleccionar una tecnología más fácil en comparación con el otro y viceversa.
ASP.NET Web Forms:
Desarrollo apoya estado • da la ilusión que el entorno en que programa es consciente de lo que el usuario está haciendo, algo así como las aplicaciones de windows, que parecen que tienen el "Wizard" para ayudarnos a hacer fácil implementar la aplicación. Webforms hace un gran trabajo ocultando mucha de la complejidad que se necesita y facilita el trabajo del desarrollador.
Desarrollo rápido de aplicaciones (RAD en inglés) •
generar entregar formularios web. Al final, todo se reduce al nivel de experiencia del desarrollador y con que se siente cómodo. El modelo de formularios web, (Muy) probablemente, tiene menos de una curva de aprendizaje para los desarrolladores con menos experiencia.
Barra de controles muy amplia • ASP.NET Web Forms ofrece una caja de herramientas mucho mayor y más robusta (controles web), mientras MVC ofrece un conjunto de control más primitivo confiando más en ricos controles del lado del cliente a través de jQuery (Javascript).
• Madurez se lanzó alrededor desde 2002 y hay una gran cantidad de información con respecto a las preguntas, problemas, etc. Ofrece más controles de terceros - así que necesitas considerar existentes toolkits.
ASP.NET MVC:
La separación de las responsabilidades) • Desde el punto de vista técnico, la organización de código dentro de MVC es muy limpio, organizado y granular, lo que es más fácil (con suerte) para una aplicación web escalar en términos de funcionalidad. Promueve gran diseño desde una perspectiva de desarrollo.
Más fácil integración con las herramientas de cliente (herramientas rica interfaz de usuario) • Más que nunca, las aplicaciones web son cada vez más tan interesantes como las aplicaciones de escritorio. Con MVC, se tiene la capacidad de integrarse con kits de herramientas (como jQuery) con mayor facilidad y más fluida que en Web Forms.
Search Engine Optimization (SEO) • Las URL son más amigables para los motores de búsqueda (es decir mywebapplication.com/users/ 1 - indica un usuario con ID de 1 vs MyWebApplication/usuarios/getuser.aspx (variable id pasada como sesión)).
Funciona bien con los desarrolladores que necesitan alto grado de control • Muchos controles en formularios web ASP.NET generan automáticamente gran parte del HTML puro que se ve cuando se procesa una página. Esto puede causar dolores de cabeza para los desarrolladores. Con MVC, se presta mejor para tener un control completo con lo que se presenta y no hay sorpresas. Aún más importante, es que los formularios HTML normalmente son mucho más pequeños que los formularios Web que puede representar un aumento de rendimiento - algo a considerar seriamente.
Pruebas de desarrollo (TDD) • Con MVC, puede crear más fácilmente las pruebas para web. Una capa adicional de prueba proporcionará otra capa de defensa contra comportamientos inesperados.
Autenticación, autorización, configuración, compilación y despliegue son características que se comparten entre los dos marcos web.
No hay comentarios:
Publicar un comentario