tutorial pages net mvc asp java .net asp.net-mvc grails

java - net - razor pages vs mvc



Comparando ASP.NET MVC y Grails para un nuevo proyecto (2)

Saludos a todos. Me considero un desarrollador intermedio, pero, para ser sincero, probablemente más novato que experto. En cualquier caso, tengo más experiencia con C # y la plataforma .NET, pero mi trabajo actual me hace trabajar casi exclusivamente con Java. Esto en sí mismo es una especie de problema, pero lo estoy manejando bien y no estoy en condiciones de cambiar mi rol en este momento.

Por otro lado, estoy empezando a trabajar en un proyecto web altamente interactivo, basado en bases de datos. Lo hago porque siento que es una gran idea y sé que la experiencia de hacer algo así desde cero me ayudará enormemente.

Inicialmente quería ir con ASP.NET MVC y todavía me estoy inclinando en esa dirección. Ni siquiera estoy seguro de por qué, pero me encanta la comunidad que la respalda y, en mi opinión, Visual Studio es el mejor IDE del mundo. Sin embargo, hacer eso sería contraproducente para mi trabajo actual. Eso me llevó a Grails. Aunque me doy cuenta de que Groovy no es Java, parece ser lo suficientemente similar (sin mencionar que se ejecuta en la JVM) que las habilidades que aprendo todavía deberían ayudarme en mi trabajo actual. Cuanto más miraba Grails, más me gustaba, especialmente después de tener que lidiar con lo que considero un entorno J2EE extremadamente complejo en el trabajo.

Pero con lo bueno encontré lo malo. No puedo evitar notar que hay muchos desarrolladores que están irritados con la cantidad de errores en Grails. Siendo que estoy comenzando un nuevo proyecto y tengo bastante poca experiencia, ¿quiero siquiera considerar Grails? ¿Es una responsabilidad? ¿Y cuál es el consenso sobre su longevidad? Realmente odiaría involucrarme demasiado si hay una buena probabilidad de que se desvanezca en la oscuridad en los próximos años. E incluso si los errores y los problemas de longevidad no son un gran problema, ¿cómo compararías la facilidad de desarrollo de Grails con la de ASP.NET MVC? Me doy cuenta de que esta última parte es altamente subjetiva. Pero por el bien de la comparación, digamos que alguien que prácticamente no tiene experiencia técnica estaba en la misma posición. ¿Recomendaría que echen un vistazo a ASP.NET MVC o Grails?

Muchas gracias. Si algo necesita ser aclarado o reformulado, hágamelo saber. Sinceramente espero no abrir una lata de gusanos ...



Soy el autor de esta question y puedo darte algunas acciones sobre mi propia experiencia.

Como se indica en la pregunta, no tenía preferencias reales y estaba abierto a cualquier plataforma / tecnología que pudiera cumplir mis requisitos. Después de varios intentos de diferentes tecnologías (al menos unos días con PHP, Rails, ASP y Grails) y algunas respuestas de , terminé con el mismo dilema que el suyo: ¿Grails o ASP.NET MVC?

Y elegí Grails. ¿Por qué? Debido a GORM. Casi solo por GORM. Es fantástico tratar solo con sus clases de dominio y hacer que su esquema de base de datos se genere / actualice automáticamente. Por supuesto, tiene sus límites, pero esto es tan poderoso para consultar y mantener su base de datos. Ya no escribes SQL y es muy fácil de aprender.

Ahora aquí está mi comparación de 2 centavos de las 2 tecnologías:

FUERZAS DE GRILLO

  1. GORM (ver arriba)

  2. Complete Web Stack Framework: puede generar un sitio web en minutos y todo ya está configurado

  3. Mucho que aprender: tienes Spring MVC, Hibernate, Sitemesh, Java, JEE, Groovy ... Una vez que hayas dominado Grails, puedes agregar una página adicional a tu currículum

  4. Mundo de java Lo que necesite, si ya existe en Java, puede usarlo.

  5. Groovy: Me gusta mucho este lenguaje de programación. Se necesita tiempo para familiarizarse, pero una vez hecho, te encantará.

Debilidades del grial

  1. Uso de memoria. Grails / groovy es codicioso para la memoria y puede costar más que ASP para alojamiento web

  2. Errores de Grails: hay algunos y cuando comienzas un nuevo proyecto con una nueva tecnología, asumes que la mayoría de los problemas provienen de ti ... hasta que descubres (después de 1 o 2 días) que es un error de Grails. Por lo tanto, mi consejo es que siga los pasos: pruebe lo antes posible y no intente torcer el marco. Es áspero en el borde, así que vaya después de lo que generalmente se recomienda. Sin embargo, después de 2 meses, ya no encuentro grandes problemas.

  3. Depuración: debido a las múltiples capas de marcos, los errores generalmente se ocultan dentro de toneladas de líneas de excepción. Además, el único depurador IDE decente es IntelliJ pero esto no es tan fácil de depurar como .NET bajo VS

Aspectos de mayor rendimiento de ASP.NET MVC

  1. La comunidad: ¡es ENORME! Primero es compatible con Microsoft y, en segundo lugar, el 30% de los sitios web que existen están integrados en ASP.NET. Puedes encontrar fragmentos de código, widgets, componentes AJAX, cualquier CMS ... La comunidad de Grails es muy activa, pero ¿puedes competir contra millones?

  2. Visual Studio: definitivamente estoy de acuerdo contigo: no hay un IDE mejor. IntelliJ es muy bueno para Grails pero al usar ambos, preferí VS

ASP.NET MVC DEBILIDADES

  1. La juventud de ASP.NET: este es un marco joven. Basado en una tecnología estable pero lo suficientemente joven (menos de 2 años) para tener también algunos errores / algunas malas prácticas. De hecho, la comunidad espera la próxima versión de ASP.NET MVC.

  2. Microsoft: incluso si ASP.NET MVC es de código abierto, usted depende totalmente de sus decisiones (y precios).

La línea de fondo Si el proyecto tiene una fecha límite ajustada y si es crucial para que tenga éxito, entonces vaya a ASP (de acuerdo con sus antecedentes). De lo contrario, inténtalo con Grails ... no te preocupes, también lo lograrás, pero te llevará más tiempo. También estoy profundamente convencido de que Grails acaba de comenzar su largo viaje y tiene un gran futuro (consulte las tendencias de Google )

Actualización de Dmitriy : Si se refiere a Google Trends, debe comparar los 2 Groovy Grails y ASP.NET MVC .

Buena suerte