quinta-feira, 4 de fevereiro de 2010

Classes e Groovy Beans

Bom, como hoje estou animado vou mandar mais um post.
Só para deixar claro, pretendo não me aprofundar muito nos primeiros posts, e ir fazendo isso conforme necessidade.

Declarando classes
class HelloController {
   def world = {
      render "Hello World it's " + new java.util.Date()
   }
}

Aqui definimos uma classe chamada HelloController que contém uma propriedade chamada world. Um valor foi atribuido a esta propriedade, no caso uma closure (não se preocupe com isso agora). Você como um programador Java deve estar confuso em como uma propriedade pode receber uma informação desta forma.

Uma outra diferença do Java é que o Groovy não tem o conceito de visibilidade padrão para classes (os package-levels da vida). Em vez disso, qualquer propriedade definida sem a visibilidade (private, public ou protected) é sub-entendida como uma propriedade de um JavaBean (ou seja, private) e os seus métodos set e get são automaticamente gerados.
No caso de métodos, na ausência de modificadores, eles serão sempre considerados como métodos públicos.

Um exemplo agora, para aprender sobre os Groovy Beans, que são como os famosos Java Beans, mas muito mais simplificados.
class Customer {
      Integer id
      String name
      Date dob

      static void main(args) {
         def customer = new Customer(id:1, name:"Gromit", dob:new Date())
         println("Hello ${customer.name}")
      }
   }

Em uma classe desse tamanhico, já da pra perceber o grande diferencial em relação a Java propriamente dito.
Nada de construtores, setters & getters, ponto e vírgula, e também podemos também omitir a palavra return dos métodos.
E isso é só o começo.
Abraços!

Nenhum comentário:

Postar um comentário

Seguidores