DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Além da IDE - Monte um ambiente completo de desenvolvimento de software - Artigo Revista Java Magazine 93

O artigo trata de ferramentas úteis no desenvolvimento de sistemas e de sua integração a um ambiente completo para este desenvolvimento, baseado na IDE. É o segundo artigo da série, abordando nesta parte as atividades de automação da construção






Esta é a segunda parte de uma série de artigos sobre a construção de um ambiente completo para desenvolvimento de software. Na primeira parte, publicada na edição 92 de Java Magazine, foram abordados a IDE (peça central da maioria dos ambientes de desenvolvimento), o servidor Web ou de aplicação (para implantar e testar aplicações Web ou corporativas), o servidor de banco de dados relacional (grande parte dos sistemas de informação atualmente utiliza-o para persistência de objetos) e uma ferramenta para gerenciamento das bases de dados.
Para a continuação desta série, há ainda uma extensa gama de ferramentas que podem ser integradas a este ambiente de desenvolvimento, trazendo benefícios diversos aos desenvolvedores. Já citamos muitas delas no primeiro artigo da série, como por exemplo: ferramentas de construção (build), gerenciamento de dependências, testes unitários, controle de versão, gerenciamento de falhas (bugs) e novas funcionalidades, análise de desempenho, integração contínua, etc.
O foco deste artigo será nas seguintes atividades/ferramentas:
• Automação da construção: permite automatizar tarefas relativas à construção (build) da aplicação, como compilação, empacotamento, geração de documentação, etc. Serão abordadas as ferramentas Maven e Ant;
• Gerenciamento de dependências: controla as dependências de um projeto, no caso do mesmo requerer diversos frameworks, que possivelmente por sua vez dependem de outros frameworks, formando uma cadeia de dependências complexa. Maven e Ivy são as ferramentas citadas para esta atividade;
• Testes unitários: consiste na elaboração de testes específicos para cada método da aplicação e sua integração ao processo de construção automatizada do sistema. A presença de testes unitários pode auxiliar o desenvolvedor a descobrir mais rapidamente quando uma alteração no sistema adicionou uma falha em módulos que já foram testados. O foco aqui será o framework JUnit.

O projeto EngeSoft, iniciado na primeira parte da série, continuará a ser utilizado nos exemplos deste artigo. Quando for mais conveniente, projetos de teste poderão ser criados somente para demonstrar determinadas abordagens. Também continuarão a ser usadas as IDEs Eclipse 3.6 (Helios) e NetBeans 7.0.
Automação da construção (build automation)
Em projetos de desenvolvimento de software de médio e grande porte é muito comum automatizar uma série de atividades relativas à construção (build) da aplicação, como por exemplo:
• Compilação do código-fonte;
• Empacotamento das classes compiladas;
• Execução de testes unitários;
• Implantação no servidor (no caso de aplicações distribuídas);
• Geração de documentação;
• Etc.

Uma das primeiras ferramentas deste tipo a ser amplamente utilizada foi o Make, criado em 1977 para automatizar a compilação de arquivos de código-fonte em arquivos objeto e a subsequente ligação de vários arquivos objeto (módulos do sistema) em um único executável. O Make foi desenvolvido para o Unix e até hoje versões modernas da ferramenta são utilizadas em sistemas Unix e Linux, tendo crescido em versatilidade. Hoje o mesmo é utilizado não só para compilação, mas para as mais variadas tarefas, como acessar repositório de controle de versão, instalar/desinstalar o programa compilado no sistema, etc.
No entanto, atualmente as duas ferramentas de automação da construção de projetos Java mais utilizadas são o Ant e o Maven (veja Links), ambos desenvolvidos pela fundação Apache. De maneira bastante resumida, pode-se dizer que o Ant é bem similar ao Make, porém portável entre diferentes plataformas e com a configuração do processo de construção via XML. O Maven vai além e provê diversas outras funcionalidades (dentre elas destaca-se o gerenciamento de dependências, sobre o qual falaremos em seguida), definindo-se como uma “ferramenta de gerenciamento e compreensão de projetos”.
Integrando o Ant
A partir da versão 4.0 (lançada em 2004), o NetBeans baseia os processos de compilação e construção de seus projetos no Ant. Ao clicar em Run > Clean and Build Main Project para apagar todos os arquivos compilados e gerá-los novamente, por exemplo, o NetBeans nada mais faz que executar com o Ant as tarefas clean e dist, que são automaticamente configuradas no arquivo build.xml criado pela própria IDE e que se encontra na pasta raiz do projeto. De fato, como mostra a Figura 1, o mesmo resultado que é impresso na aba Output do NetBeans poderá ser visto caso o leitor abra um terminal (prompt de comando) no diretório do projeto e execute o comando ant clean dist, assumindo que o Ant encontra-se instalado em seu sistema operacional.
"


ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Vítor Estêvão Silva Souza

Graduação em Ciência da Computação e Mestrado em Informática com ênfase em Engenharia de Software na Universidade Federal do Espírito Santo (UFES), onde trabalhou também como professor substituto.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03