¿Existe un líder claro entre los lenguajes basados ​​en JVM? [cerrado]

9

¿Cuál es el estado actual de estos proyectos? ¿Ha surgido uno (o dos) como un líder claro?

Para demostrar mis motivos para hacer esta pregunta, recuerde varios años. Prototype y jQuery se enfrentaban cara a cara con otros jugadores como MooTools que luchaban por sobrevivir también. Avancemos rápidamente hasta hoy, y el consenso general es que jQuery es la mejor biblioteca de JavaScript de propósito general.

¿Ha sucedido algo similar en los últimos años con estos lenguajes basados ​​en JVM? ¿Han caído ciertos idiomas en mal estado y abandono? Por lo que he leído, parece que Scala ciertamente está bien preparada para convertirse en la favorita, pero, de nuevo, casi todo lo que he leído tiene varios años.


He investigado un poco más; tuve la idea de revisar el volumen de búsqueda a través de los años utilizando Google Trends . Parece que Jython y JRuby tienen relativamente poco interés, mientras que el volumen de Groovy está disminuyendo y el volumen de Scala es constante (en el peor de los casos) o aumenta ligeramente (en el mejor de los casos). ¿Es esta una evaluación precisa?


Y sí, me refiero a lenguajes no Java en la JVM como Jython, JRuby, Groovy, Scala, Clojure, etc.

rinogo
fuente
8
Una cosa importante para recordar es que los usuarios de JRuby a menudo buscan a Ruby cada vez que se preguntan sobre cosas relacionadas con la sintaxis, modismos, ejemplos, etc. Por lo tanto, comparar etiquetas o tendencias es difícil ya que Scala y Groovy se refieren a un lenguaje e implementación, mientras que JRuby simplemente se refiere a una implementación.
Deckard el
10
Definir "líder" :) En el sentido puro de "# de veces utilizado", Java es el líder claro
Heiko Rupp
44
Espero que siga siendo Java :)
44
De hecho, Java es un claro líder en la JVM.
Quirón el
44
@jprete: rinogo enumeró los idiomas, pero Mark Trapp los eliminó y cambió la pregunta.
Jonas

Respuestas:

12

Ninguna

Ninguno tiene la penetración en el mercado necesaria para declararlos como un "ganador" en la carrera (si hay uno) para encontrar un mejor lenguaje JVM.

Verificación de trabajos disponibles (en careers.stackoverflow.com) como indicador del mercado para personas con estas habilidades.

1 trabajo maravilloso .
4 trabajos scala .
21 empleos en C # .
22 trabajos de rubí .
29 trabajos en python .
34 trabajos de php .
39 empleos java .
0 para JRuby, Jython o Grails.

Buscado el 23/04/2011, usando el código postal 10001 y un rango de 150 millas

Josh K
fuente
Sería interesante ver cómo se ponderan al comenzar el salario (o incluso su rango). Pero, de nuevo, esto te llevaría directamente al territorio fuera de tema.
GregC
3
¿Qué tal clojure?
alternativa
2
¿Las carreras tienen el tipo de penetración en el mercado para ser una muestra razonable? La lista general muestra 549 trabajos (¿suena como listas totales?).
Steven Evers
1
@SnOrfus: Quizás no, fue el primero que busqué, ya que, según mi propia experiencia, todos los trabajos son relativamente de alta calidad y están bien definidos con las etiquetas y el enfoque adecuados. Volveré a ejecutar estos resultados en varios otros sitios.
Josh K
@Josh K. Esa es una decisión razonable. +1.
Steven Evers
7

Hace un año hubo una evaluación de los tamaños de comunidad de Stack Overflow , y Scala se puso al frente, con Groovy y Clojure muy cerca. Puede utilizar el volcado disponible gratuitamente para realizar consultas similares.

En cualquier caso, no veo ningún ganador claro en absoluto en la tierra de JVM. En primer lugar, hay una gran multitud a la que le gustan los lenguajes dinámicos y no irán con Scala. Luego, está la multitud estática que no irá con lenguajes dinámicos como Groovy.

Pero todos tienen PEQUEÑOS seguidores, en comparación con cualquiera de los grandes idiomas que existen. Carecen de masa crítica para garantizar el éxito a largo plazo, que sería la marca de un verdadero ganador.

Daniel C. Sobral
fuente
1
+1 para el enlace útil, pero agregaría que el punto sobre los lenguajes JVM es que no necesitan masa crítica de la misma manera que los ecosistemas de lenguaje completamente independientes, ya que pueden explotar todas las bibliotecas y herramientas de Java. Yo diría que Clojure, Scala, JRuby y Groovy ya han superado la masa crítica como resultado de esto.
mikera
3

La pregunta más relacionada es ¿Cómo alienta a su organización a pasar de Java a Scala?

Scala ofrece un paradigma y una sintaxis de programación diferentes, mientras que Groovy ofrece una curva de aprendizaje baja para los desarrolladores de Java. Ambos tienen su lugar.

Comentarios relacionados de la comunidad: /programming/3644251/what-are-your-experiences-developing-in-scala-lift/3646365#3646365

A juzgar por los comentarios positivos, diría que Scala es una buena apuesta.

También creo que una herramienta intuitiva que no causa muchas preguntas es un indicador positivo, por lo que la cantidad de preguntas sobre Stack Overflow no es una gran métrica.

GregC
fuente
3
Los sentimientos no responden. ¿Tienes hechos y referencias ?
2
¡Mark es un moderador increíble!
GregC
Gracias, pero ahora su respuesta no responde a la pregunta. La pregunta es buscar información específica sobre el estado de los proyectos, no sus pensamientos sobre cuándo usar uno u otro. Su formulación original respondió la pregunta, solo necesitaba referencias para respaldarla.
@ Mark Trapp: sus esfuerzos son muy bienvenidos. Tengo que concentrarme un poco más en la sustancia.
GregC
3

Esta pregunta se basa en la suposición completamente equivocada, de que los lenguajes JVM son alternativas entre sí. Estás haciendo una analogía con los kits de herramientas de JS, que todos usan el mismo lenguaje, todos tienen la misma audiencia, todos tienen el mismo uso. En el caso de los lenguajes JVM, lo único que tienen en común todos ellos es que se implementan utilizando JVM. Aparte de eso, es un espectro tan amplio de lenguajes, como puedes obtener: estático, dinámico, funcional, objetivo ...

Por ejemplo, está mal suponer que Jython es una alternativa a Scala o JRuby; Es mucho más una alternativa a CPython, IronPython o PyPy.

En cuanto a la respuesta más votada actual , también se da por sentado que la descripción del trabajo hablará sobre los detalles de implementación. En realidad, incluso si una compañía usa Jython o JRuby, la descripción del trabajo aún requerirá experiencia en Python o Ruby. Jython se ajusta a la especificación del lenguaje, por lo tanto, Jython es Python , similar a JRuby es Ruby .

vartec
fuente
+1. Muy buen punto. No existe un "lenguaje basado en JVM". El propio Java se puede compilar a JavaScript (GWT) o binarios nativos (GCJ). Por el contrario, JavaScript puede ejecutarse en la JVM (rinoceronte), aunque no figuraba entre los candidatos. El objetivo de los lenguajes de programación es tener una abstracción manejable de cómo se ejecutan los programas.
back2dos
0

No hay un líder claro: Scala, Clojure y Groovy parecen ser muy fuertes en la actualidad (mediados de 2012).

Algunos datos de la encuesta:

Sin embargo, es difícil de medir: creo que las publicaciones e índices de trabajo como TIOBE son esencialmente inútiles para la adopción de un nuevo lenguaje, ya que dependen principalmente de indicadores muy rezagados (su jefe promedio de pelo puntiagudo no va a contratar a un desarrollador de Clojure hasta al menos un Un par de años después de que sus piratas informáticos actuales de Clojure hayan creado un producto increíblemente increíble y finalmente hayan decidido que necesitan hacer crecer el equipo).

mikera
fuente