Estoy seguro de que esta pregunta se ha hecho muchas veces. Sin embargo, me gustaría volver a preguntarlo con la intención de cuál es el futuro de estos idiomas.
Me presentaron por primera vez a Groovy y realmente me gustó. Sentí que la sintaxis era más simple y estaba mucho más cerca de Java y pude aprender rápidamente Grails .
Luego estaba Scala , y el marco web de trabajo de elevación . Todavía estoy aprendiendo Scala y a veces encuentro la sintaxis muy difícil.
Sin embargo, todavía me pregunto cuál es el futuro de Groovy. Cuando el autor de Groovy dice que nunca habría creado Groovy si supiera sobre Scala, entonces me pregunto si hay un futuro en absoluto. Por supuesto, Groovy ha recorrido un largo camino y Grails es utilizado hoy por muchas grandes empresas.
Si uno mirara a Grails vs Lift hoy, entonces Grails sería un claro ganador. Más empresas lo están utilizando. Pero dado todo lo que he dicho hasta ahora, ¿estoy interesado en saber si uno debería invertir en Groovy? ¿Groovy se va y Scala es la mejor opción? Si el CEO de BMW dice que conduce un Mercedes, uno se preguntaría por qué no deberíamos todos conducir Mercedes también, ¿verdad?
(Entiendo si esta pregunta es realmente amplia y podría cerrarse. Sin embargo, espero que sea una Wiki abierta para otros).
Respuestas:
No creo que Groovy vaya a desaparecer, ahora es una entidad autosuficiente. El marco de Grails se basa en el lenguaje Groovy, que es una buena razón para mantenerse con vida. Groovy obtuvo su aplicación asesina.
No digo que Grails sea el único proyecto vital de Groovy, Gradle también es bastante bueno. GORM es realmente útil. Gant es una buena mejora sobre Ant.
Sin mencionar que Groovy / Grails ahora están bajo el paraguas de SpringSource y están comprometidos con ambos.
¿Adivina qué eligió James Gosling?
fuente
Además de los comentarios de @The Legend of 1982:
Groovy continuará, ya que es la alternativa dinámica a Java con una sintaxis lo suficientemente cercana a Java como para permitir que muchos desarrolladores hagan el cambio (o al menos incursionen).
Grails está constantemente en los 2 principales marcos cada vez que Matt Raible hace sus masivos gráficos / análisis de comparación de marcos web en lenguaje JVM. El suyo es probablemente el análisis más completo que existe.
GPars es una nueva biblioteca / API de concurrencia que hace que Groovy aumente las capacidades de Scala allí.
El problema con la velocidad mejorará con el tiempo a medida que Groovy descubra cómo usar los trucos del invocador dinámico y otros compiladores.
fuente
Groovy es un lenguaje muy agradable y subestimado (incluso por su propio creador, como has mencionado). En cuanto a mí, su papel en el ecosistema de Java es como el papel de Lua en el ecosistema mundial C / C ++. Sí, no es tan rápido, pero de todos modos.
Estaré muy triste si Groovy va a morir, pero esta hoja de ruta en realidad nos dice que no es tan malo.
En realidad, Groovy es un lenguaje muy agradable, ordenado y expresivo. En cuanto a Scala, creo que Groovy y Scala están en nichos diferentes.
fuente
No para golpear la excelencia general de Groovy o Ruby, sino que más del 90% del tráfico web se dirige a sitios escritos en PHP o algún marco de Java.
No sé de dónde sacaste el "Grails es usado por muchas grandes empresas", esto es más o menos como decir "todas las compañías de Fortune 500 usan Python", lo cual es realmente cierto, pero no usan Python para ningún negocio crítico.
Tienen razón en no usar Grails, Rails, etc. Son excelentes para sitios pequeños y limpios, pero no se adaptan bien. Además, la mayoría de las grandes empresas tienen sistemas intrincadamente interconectados, y el mayor desafío al crear aplicaciones web gira en torno a cómo conectarse a todos los demás sistemas que proporcionan o consumen sus datos: la codificación por convención simplemente no funciona en este espacio.
Groovy, el principal competidor del lenguaje, es en realidad JPython, que opera en el mismo espacio (Scripting en una JVM) y se utiliza para el mismo tipo de cosas (pruebas automatizadas, compilaciones automatizadas, etc.).
fuente
El rendimiento de Groovy 2.0 coloca a Groovy ahora en una liga muy cercana a Java, consulte http://java.dzone.com/articles/groovy-20-performance-compared. El punto de referencia en este artículo es muy, pero difícil. trabajando ahora en un nuevo punto de referencia para Groovy 2.1 basado en el de Robert Hundt (https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf) para comparar el rendimiento de Google Go con otros idiomas Necesito 2-3 semanas hasta que termine de escribir el artículo, pero las medidas se ven muy bien hasta ahora. Groovy2.1 con @CompileStatic y JDK7 tiene aproximadamente el mismo rendimiento que Java con JDK6 (!).
Creo que Groovy competirá más con Kotlin y tal vez Ceilán que con Scala. Scala es más un lenguaje de investigación académica (aunque muy interesante) y no tanto un idioma para hacer el trabajo como Groovy y Kotlin. Si simplemente le faltan mixins, métodos de extensión, cierres verdaderos y cosas en Java, es un gran paso que debe hacer para obtener esto. La sintaxis de Groovy está muy cerca de Java, lo que cree que es un verdadero punto de venta en comparación con Kotlin.
fuente