Desenvolvimento - ASP. NET

Instalação e preparação de ambiente para o Enterprise Library

Neste artigo veremos com detalhes o processo de instalação do Microsoft Enterprise Library.

por Wallace Pinto de Oliveira



Neste artigo veremos com detalhes o processo de instalação do Microsoft Enterprise Library. Para introdução ao Enterprise Library sugiro a leitura do artigo "Produtividade e Desempenho com Microsoft Enterprise Library" publicado neste mesmo site.

Nosso trabalho inicia-se com o download da biblioteca através do link http://www.microsoft.com/downloads/details.aspx?FamilyId=0325B97A-9534-4349-8038-D56B38EC394C&displaylang=en. Para finalizar a transferencia é necessário que você forneça seu Microsoft .Net Passport. Feito isto será iniciado o download do instalador (aproximadament 9 MB para transferência).

Executando o Instalador

Finalizado o download damos prosseguimento a instalação. Faça isto executando o arquivo EnterpriseLibraryJan2005.exe. Neste instante será exibida a tela abaixo:

No próximo passo do assistente encontramos informações importantes sobre o licenciamento do software. Veja abaixo. Recomendo uma leitura minunciosa neste contrato. Segundo este contrato, por exemplo, você é obrigado a exibir a seguinte mensagem ao distribuir o seu aplicativo: "Contains software or other content adapted from Microsoft Library. Original Enterprise Library © Microsoft Corporation. All rights reserved."

Na próxima etapa definimos o diretório no qual serão copiados os fontes da biblioteca. Aqui também optamos por compilar todos os fontes e gerar os assemblies necessários. Veremos adiante onde são mantidos estes fontes e em que linguagens são escritos.

Na etapa abaixo são selecionadas as bibliotecas e QuickStarts que serão instalados. Estes "QuickStarts" são aplicações demo que utilizam cada uma dos Application Blocs que compoem o Enterprise Library.

Finalizadas as etapas de configuração da instalação dar-se início ao processo de cópia de fontes e compilação (se o checkbox "Compile Enterprise Library" estiver marcado). O processo é um pouco demorado, não estranhe se levar 5 a 10 minutos.

Finalizada a cópia e compilação dos Application Block com respectivos QuickStarts, é exibida então a tradicional etapa de finalização do instalador. Deste ponto em diante seu ambiente de desenvolvimento está pronto para trabalho.

Arquivos Fonte Gerados

Vamos tomar como primeiro objeto de estudo neste artigo o diretório alvo de instalação ( tipicamente C:\Arquivos de Programas\Microsoft Enterprise Library ). Veja na próxima figura. Observe que o fonte dos Application Blocks estão abaixo da pasta \src. Verifique também que enquanto os QuickStarts possuem fontes para linguagens VB.NET e C#, os Application Blocks disponibilizam versão apenas na segunda linguagem citada. Veja também que são geradas as pastas \bin e \obj para os Application Blocks graças a opção de compilação do instalador.

Vamos analisar agora com maior cuidado o conteúdo de alguns assemblies. Faça isto abrindo o assembly \src\ EnterpriseLibrary.sln. Veja a figura abaixo:

Ufa!!! Quantos assemblies!! Na verdade nem todos estes assemblies são necessários. Na parte de Logging, por exemplo, você pode abrir mão de integração com o MSMQ e eliminar a distribuição do Logging.MsmqDistributor. Em projetos "do mundo real" o número de assemblies tende a ser bem reduzido.

Vamos agora verificar o nodo "References" do assembly Caching (responsável por Cache de dados). Note que existe um warning no item nunit.framework. Esta biblioteca (que pode ser obtida no link http://www.nunit.org/) é utilizada nos testes de unidade existentes no Enterprise Library. É altamente recomendado que você baixe e instale esta biblioteca. Note também que o assembly Caching depende de Common e Configuration, que também fazem parte do EL. Estes assemblies são comuns na maioria dos Application Blocks que compoem o EL. Os demais assemblies fazem parte da biblioteca de classes do .Net Framework e dispensam comentários.

Testes de Unidade

Uma das boas práticas de programação defendidas pelo EL é a construção de Testes de Unidade para classes de negócio. Através destes testes podemos certificar a robustez de uma classe, provendo assim maior qualidade ao software construído.

Um dos pré-requisitos para a criação de Testes de Unidades no EL é a instalação do NUnit. Faça o download deste framework e execute seu instalador para preparação do ambiente de desenvolvimento.

Veja agora um exemplo de Teste de Unidade. O fonte abaixo define testes para a classe CacheItem do assembly Caching. Note na figura abaixo que o fonte dos testes está "acizentado", ou seja, o código fonte está inativo devido a compilação condicional estabelecida pelo símbolo UNIT_TESTS. Precisamos então definir este símbolo para ativar a compilação do teste de unidade.

Experimente agora acessar o combo que alterna ambientes de Debug com Release. Veja a figura abaixo. Note que agora existem vários outros ambientes, e neles podemos encontrar um denominado "DebugUnitTests". Selecione este novo item.

Note que após selecionar o ambiente "DebugUnitTests" o código fonte dos testes de unidade é ativado e está disponível para compilação.

As Ferramentas

Para lidar com tantos assemblies e tantas configurações, a Microsoft distribui uma aplicação denominada "Enterprise Library Configuration". Execute o arquivo EntLibConfig.exe na pasta \bin do diretório de instalação do EL.

Em futuros artigos veremos com maiores detalhes esta e outras ferramentas que compões o EL. Vale a pena lembrar que o código fonte desta aplicação também é distribuído com o EL.

Bugs e Patches de Correção

Bugs e patches de correção podem ser encontrados no Workspace do GotDotNet reservado ao Enterprise Library. Confira o link http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=295a464a-6072-4e25-94e2-91be63527327 para maiores detalhes.

Conclusão

Como todo software distribuído pela Microsoft o Enterprise Library tem sua instalação extremamente simplificada através de um assistente de setup. A utilização de testes de unidade são altamente recomendadas durante a construção de um software e a existência de aplicações de exemplos, os QuickStarts, são de grande valida durante a fase de aprendizado da tecnologia.

Wallace Pinto de Oliveira

Wallace Pinto de Oliveira - MCP, MCAD - http://www.venki.com.br.