Existe um estilo de implementação conhecido como Fluent Interface, encontrei referências chamando também de encadeamento de objetos, que está ganhando espaço entre os programadores (eu não sabia, descobri isso a pouco tempo) e que parece ser uma forma interessante de implementação.
Essa forma de implementação é um pouco incomum, do que se ver normalmente em implementações Java, como métodos set que retornarem um objeto ou this ao invés de void e a utilização de chamadas de métodos encadeadas.
As vantagens são interessantes, podendo deixar o código mais fluente e com uma legibilidade bem natural, facilitando o entendimento do código. Um framework que utiliza fortemente Fluent Interface é o JMock.
Um exemplo muito simples de Fluent Interface:
E a forma “normal” de fazer seria algo parecido com:
Onde podemos identificar também que se pode encapsular alguns objetos, poupando o tempo do desenvolvedor e (insisto nessa vantagem) melhorando a legibilidade do código.
Existem outras referências como o livro de Martin Fowler, que é referência para esse post. Então fica mais uma dica aí!
Um comentário:
@Valdemar
Boa Tarde!
Uso bastante isso no Hibernate, quando escrevo consultas via Criteria.
André Moreira
mourdok@gmail.com
Postar um comentário