quarta-feira, 15 de abril de 2009

Java Fluent Interface

java_fluent_interface

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:

image

E a forma “normal” de fazer seria algo parecido com:

image

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:

André Moreira オタク disse...

@Valdemar

Boa Tarde!

Uso bastante isso no Hibernate, quando escrevo consultas via Criteria.

André Moreira
mourdok@gmail.com

Postar um comentário

Postar um comentário