domingo, 28 de fevereiro de 2010

Groovy & Grails – tutorial – parte 3

Vamos continuar vendo as principais características do Groovy:

1) Tratamento de Strings:

As strings do Groovy se comportam como as strings do Java, podendo ser utilizadas da mesma forma se você quiser. Mas elas têm algumas facilidades, que auxiliam a vida do desenvolvedor. As concatenações, por exemplo:

Em Java:

String anoModelo = carro.getAno() + “ modelo “ + carro.getModelo();

Em Groovy:

String anoModelo = “${carro.ano} modelo ${carro.modelo}”

Repare que aqui já se começa a fazer uso dos getters dinâmicos, que falei na parte 2 do tutorial. O Groovy interpreta o conteúdo entre ${ e } e obtém o valor da variável ali explícita. Se ela não for do tipo String, o Groovy vai chamar o método toString() da variável.

Outra funcionalidade das Strings em Groovy é o suporte a múltiplas linhas, como no Java, mas de uma forma mais facilmente visível para o desenvolvedor. Por exemplo:

Em Java:

String mensagem = “Tipo de dado inválido.\nO valor deve ser númerico.\nVocê deve preencher novamente o campo Ano de Fabricação.\n”;

Em Groovy:

String mensagem = """Tipo de dado inválido.

O valor deve ser numérico.

Você deve preencher novamente o campo Ano de Fabricação."""

Ou seja: Utilizando aspas triplas, o Groovy obedece a formatação que você faz no texto.

2) Construtores dinâmicos:

Volte lá na parte 2 do tutorial e veja a classe Veiculo que está lá definida. Ela não tem nenhum constructor declarado, apenas o padrão, sem parâmetros.

Mas a classe Veiculo pode ser chamada desta forma:

Veiculo veiculo = new Veiculo(fabricante:"Ferrari", anoFabricacao:2010)

O Groovy vai chamar automaticamente os setters dos atributos passados como parâmetro.

Esta funcionalidade é muito utilizada no Grails.

Bacana, não?

Nenhum comentário: