Artigo Java Magazine 06 - Automação com XDoclet

Retirar do programador a tarefa entediante de criar código repetitivo, adicionando mais significado e poder ao código escrito é o objetivo do XDoclet.

Esse artigo faz parte da revista Java Magazine edição 06. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler esse artigo em PDF.

Automação com XDoclet

Livre-se da codificação repetitiva

Retirar do programador a tarefa entediante de criar código repetitivo, adicionando mais significado e poder ao código escrito é o objetivo do XDoclet

Diversas áreas de programação em Java têm uma característica bem distinta: o uso de código baseado em modelos ou templates – aquelas classes que você sempre acaba copiando de um exemplo, ou cria baseando-se em padrões de projeto bem conhecidos. À medida que um projeto cresce, a criação dessas classes se torna apenas trabalho repetitivo. Esse é o cenário ideal para a aplicação do uma ferramenta de geração de código como o XDoclet.

Origens

Visando livrar o programador do trabalho  repetitivo no desenvolvimento de EJB’s, Rickard Öberg criou uma ferramenta chamada ejbdoclet, que gerava interfaces de componentes e seus deployment descriptors. O ejbdoclet ganhou força e, com a idéia de levar a geração automática de código a outras áreas da programação, nasceu o XDoclet.

 Hoje, Öberg não participa mais do desenvolvimento da ferramenta, mas o projeto atraiu um grupo de programadores ao redor do mundo, tornando a equipe do projeto verdadeiramente internacional. O XDoclet conta atualmente com desenvolvedores na Alemanha, França, Noruega, Rússia, Brasil e Estados Unidos, entre vários outros países.

@tags: metadados para seu código

Informações são fornecidas ao XDoclet através da marcação do código fonte com tags semelhantes às usadas para gerar documentação usando a ferramenta javadoc. As tags adicionam metadados ao código existente – são esses metadados a fonte de informação para a geração de arquivos pelo XDoclet.

Com o XDoclet, você passa a ver os comentários de seu código com outros olhos. Eles passam a complementar o significado dos programas, expressando coisas que a linguagem Java não consegue expressar, como as relações entre as várias partes de um EJB: as interfaces, a classe de implementação e os deployment descriptors. A principal vantagem de um modelo como esse é a centralização da informação. Tudo o que você precisa saber sobre um componente fica em um único local: a classe de implementação do componente.

Algumas das principais tags do XDoclet usada na programação de EJBs são:

·@ejb.bean – fornece informações gerais sobre um componente EJB, como o tipo de componente, seu nome, localização no JNDI, tipos de interface (local ou remota) e chave primária;

·@ejb.finder – define métodos de pesquisa (finders) para um entity bean;

·@ejb.persistence – define parâmetros de persistência para um entity bean, como o nome da tabela em que o bean é persistido, ou o nome da coluna em que cada propriedade é persistida.

Arquitetura

No coração do XDoclet, está o template engine (mecanismo de templates), responsável pela interpretação dos templates (modelos de código), usados como base para a geração dos arquivos. Os templates são escritos numa sintaxe particular ao XDoclet e fazem uso dos tag handlers (manipuladores de tags), classes que fornecem os dados necessários para os templates. Ligado aos tag handlers está o xjavadoc, um analisador de código Java responsável por fornecer aos tag handlers informações sobre as tags utilizadas na marcação do código fonte. "

[...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados