Groovy

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Text document with red question mark.svg
Este artigo ou secção contenha fonte(s) no fim do texto, esta(s) não é/são citada(s) no corpo do artigo, o que compromete a confiabilidade das informações. (desde maio de 2011)
Por favor, melhore este artigo introduzindo notas de rodapé citando as fontes, inserindo-as no corpo do texto sempre que necessário.

Groovy é uma linguagem de programação orientada a objetos desenvolvida para a plataforma Java como alternativa à linguagem de programação Java. Groovy possui características de Python, Ruby e Smalltalk.

Groovy utiliza uma sintaxe similar à de Java, é compilada dinamicamente para bytecode Java, e integra-se transparentemente com outros códigos e bibliotecas Java.

Groovy está atualmente em processo de padronização através do Java Community Process ( JSR 241 ).

Groovy possui algumas características não presentes no Java padrão:

Índice

[editar] Exemplos

 class Foo {
   def doSomething() {
     def data = ["name": "James", "location": "London"]
     for (e in data) {
       println("entry ${e.key} is ${e.value}")
     }
   }
 
   def closureExample(collection) {
     collection.each { println("value ${it}") }
   }
 
   static void main(args) {
     def values = [1, 2, 3, "abc"]
     def foo = new Foo()
     foo.closureExample(values)
     foo.doSomething()
   }
 }

[editar] Comparação entre código Java e equivalente código Groovy

[editar] Java

 class Filter {
     public static void main(String[] args) {
         List<String> list = Arrays.asList("Alfinete", "Sabrina", "Zina");
         List<String> shorts = new ArrayList<String>();
         for (String item : list) {
             if (item.length() <= 4) { shorts.add(item); }
         }
         for (String item : shorts) { System.out.println(item); }
     }
 }

[editar] Groovy

 list = ["Alfinete", "Sabrina", "Zina"]
 shorts = list.findAll { it.size() <= 4 }
 shorts.each { println it }

[editar] Referências

[editar] Veja também

  • Grails - framework para desenvolvimento de aplicações web inspirado no Ruby on Rails
  • Groovlets - para implementar Servlets de modo fácil utilizando scripts Groovy
  • Boo - uma linguagem com objetivos similares mas voltada para o Common Language Runtime
  • Jython - uma implementação da linguagem Python que gera bytecode para máquinas Java

[editar] Ligações externas


Ferramentas pessoais
Espaços nominais

Variantes
Ações
Navegação
Colaboração
Imprimir/exportar
Ferramentas
Noutras línguas