Introdução

Groovy é uma linguagem dinâmica para a JVM, criada em meados 2003, e inicialmente idealizada por James Strachan: Groovy – the birth of a new dynamic language for the Java platform.

Linguagens dinâmicas são linguagens de programação de alto nível que apresentam, em tempo de execução, comportamentos que outras linguagens só exibem em tempo de compilação. Por exemplo, é possível adicionar, em tempo de execução, métodos a uma classe já definida:

class MyObject {

    public void staticMethod() {
        println 'static'
    }
 
}

MyObject.metaClass.dynamicMethod = {println 'dynamic'}
MyObject obj = new MyObject()

obj.staticMethod()
obj.dynamicMethod()

Execute o código anterior usando o Groovy Web Console

Por que aprender Groovy?

  1. Groovy é Java – Em muitos aspectos, Groovy é Java:
    • Também é orientada a objetos;
    • O código-fonte é compilado em Java bytecodes e executado em uma JVM;
    • A sintaxe é parecida o suficiente para que a curva de aprendizado seja pequena. As transições Java -> Groovy e Groovy -> Java são as mais suaves quando comparadas com qualquer outra linguagem para JVM.
      Dessa forma, programadores iniciantes ou experientes em Java (ou mesmo em C++), aprenderão Groovy rapidamente. Programadores que estiverem adotando Groovy como primeira linguagem, terão facilidade em aprender Java, posteriormente;
    • Tem acesso a todas as classes, bibliotecas e frameworks disponíveis para Java, sem a necessidade de nenhuma adaptação ou de passos adicionais para a integração;
    • É de código-aberto (open source).
  2. Groovy é mais do que Java – Em muitos aspectos, Groovy não é Java:
    • Pode ser mais expressiva, com sintaxe mais compacta e clara;
    • Trata closures como cidadãos de primeira classe (first-class citizens);
    • É dinamicamente tipada (dynamically typed);
    • Possui suporte built-in a poderosas características comuns às demais linguagens dinâmicas;
    • Permite a criação de DSLs (Domain-Specific Languages);
    • Dispõe de vasta gama de módulos e extensões, tais como Grails, Geb, Spock, Gant e Groovy++, que agilizam a produtividade em todas as fases de desenvolvimento: Da elaboração à implantação;
    • Está licenciada sob a Apache License, Version 2.0.

Java x Groovy (alguns exemplos)

2 Responses to Introdução

  1. Parabéns pela iniciativa.
    Estou empolgado com a linguagem.
    Estudo Java faz um tempo, já tenho fluencia e estarei no mercado em pouco tempo.
    A pergunta que faço é a seguinte, é melhor estudar os grandes frameworks do mercado como Spring, EJB, Hibernate, para depois se preocupar com Groovy, ou é interesante já estudar a linguagem e junto seus respectivos frameworks?
    Grande abraço.

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*


nove × = 18

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>