Estou certo de que essa pergunta já foi feita várias vezes. No entanto, eu gostaria de perguntar novamente com a intenção de qual é o futuro dessas línguas.
Fui apresentado ao Groovy e gostei muito. Eu senti que a sintaxe era mais simples e muito mais próxima do Java e pude aprender rapidamente o Grails .
Depois, houve Scala , e o quadro da web funcionou como Lift . Ainda estou aprendendo Scala e às vezes acho a sintaxe muito difícil.
No entanto, ainda me pergunto qual é o futuro do Groovy. Quando o autor de Groovy diz que nunca teria criado groovy se soubesse sobre Scala, isso me faz pensar se há futuro. É claro que o Groovy percorreu um longo caminho e o Grails é usado hoje em dia por muitas grandes empresas.
Se alguém olhasse hoje para Grails vs Lift, então Grails seria um vencedor claro. Mais empresas estão usando. Mas, considerando tudo o que eu disse até agora, estou interessado em saber se alguém deve investir no Groovy? Groovy está indo embora e Scala é a melhor escolha? Se o CEO da BMW diz que ele dirige um Mercedes, então alguém se pergunta por que não devemos todos dirigir também, certo?
(Entendo se essa pergunta é realmente ampla e pode ser encerrada. Espero torná-la uma Wiki aberta para outras pessoas.)
Respostas:
Eu não acho que Groovy vai desaparecer, é uma entidade auto-sustentável agora. A estrutura do Grails é construída em torno da linguagem Groovy, o que é uma boa razão para permanecer vivo. Groovy tem sua aplicação matadora.
Não estou dizendo que Grails é o único projeto vital do Groovy, Gradle também é muito bom. GORM é realmente útil. Gant é uma boa melhoria em relação à Ant.
Sem mencionar que o Groovy / Grails agora está sob o guarda-chuva do SpringSource e está comprometido com os dois.
Adivinha o que James Gosling escolheu?
fonte
Assim como os comentários de The Legend of 1982:
O Groovy continuará sendo uma alternativa dinâmica ao Java, com sintaxe próxima o suficiente do Java para permitir que muitos desenvolvedores façam a troca (ou pelo menos se envolvam nela).
O Grails está constantemente entre as duas principais estruturas sempre que Matt Raible faz seus enormes gráficos / análises de comparação de estruturas da web da linguagem JVM. A dele é provavelmente a análise mais completa existente.
O GPars é uma nova lib / API de simultaneidade que traz ao Groovy as capacidades da Scala lá.
O problema com a velocidade melhorará com o tempo, à medida que o Groovy descobrir como usar os truques invokedynamic e outros do compilador.
fonte
Groovy é uma linguagem muito agradável e subestimada (mesmo por seu próprio criador, como você mencionou). Quanto a mim, seu papel no ecossistema Java é como o papel de Lua no ecossistema mundial C / C ++. Sim, não é tão rápido, mas mesmo assim.
Ficarei muito triste se o groovy morrer, mas esse roteiro realmente nos diz que não é tão ruim assim.
Na verdade, o Groovy é uma linguagem muito agradável, elegante e expressiva. Quanto a Scala, acredito que Groovy e Scala estão apenas em nichos diferentes.
fonte
Para não prejudicar a excelência geral do Groovy ou do Ruby, mais de 90% do tráfego da Web é para sites escritos em PHP ou em algum framework Java.
Não sei de onde você tirou o "Grails é usado por muitas grandes empresas", é como dizer "todas as empresas da Fortune 500 usam Python", o que é realmente verdade, mas elas não usam o python para nada que seja crítico para os negócios.
Eles têm razão em não usar Grails, Rails, etc. Eles são ótimos para sites pequenos e organizados, mas não são bem dimensionados. Além disso, a maioria das grandes empresas possui sistemas interconectados, e o grande desafio ao criar aplicativos da Web gira em torno de como se conectar a todos os outros sistemas que fornecem ou consomem seus dados - a codificação por convenção simplesmente não funciona nesse espaço.
O principal concorrente da linguagem é o JPython, que opera no mesmo espaço (Script em uma JVM) e é usado para o mesmo tipo de coisas (testes automatizados, compilações automatizadas etc.).
fonte
O desempenho do Groovy 2.0 coloca o Groovy agora em uma liga muito próxima do Java, consulte http://java.dzone.com/articles/groovy-20-performance-compared A referência neste artigo é muito grosseira, mas estou trabalhando agora em um novo benchmark para o Groovy 2.1 baseado no de Robert Hundt (https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf) feito para comparar o desempenho do Google Go com outros idiomas. Preciso de 2 a 3 semanas até terminar de escrever o artigo, mas as medidas parecem muito boas até agora. O Groovy2.1 com @CompileStatic e JDK7 tem aproximadamente o mesmo desempenho que Java com JDK6 (!).
Acho que o Groovy competirá mais com o Kotlin e talvez com o Ceilão, e não com o Scala. Scala é mais uma linguagem de pesquisa acadêmica (embora muito interessante) e não tanto para se fazer um trabalho como Groovy e Kotlin. Se você está simplesmente sentindo falta de mixins, métodos de extensão, fechamentos verdadeiros e coisas em Java, é um grande passo que você precisa dar para conseguir isso. A sintaxe do Groovy está muito próxima do Java, que considera um ponto de venda real comparado ao Kotlin.
fonte