Postagens

Mostrando postagens de Maio, 2017

Criando objetos com @Builder e @Value do framework Lombok

Imagem
Hoje iremos ver como utilizar as anotações @Builder e @Value do framework Lombok, visando melhorar a forma de criação de objetos.

Utilizando a anotação @Builder
O nome vem do Pattern Builder, que é um pattern que visa a criação de objetos, ou seja é um pattern de Criação.
Vamos analisar a classe abaixo:
1 2 3 4 5 6 7@Getter@BuilderpublicclassCliente{private String nome;private String cnpj;private String endereco;}
O arquivo compilado irá ter a seguinte estrutura:


No exemplo acima, notamos que o Lombok criou uma classe interna chamada ClienteBuilder, seguindo os preceitos do pattern, agora podemos criar um objeto Cliente utilizando uma forma fluente, assim deixando o código mais simples e funcional, como abaixo:

1 2 3 4 5Cliente.builder().nome("Nome do Cliente").cnpj("1234567890").endereco("São Paulo").build();
Quando trabalhamos com a criação de modelos de domínio complexos, onde cada entidade possui vários relacionamentos e atributos o uso dessa abordagem …