Microsoft Enterprise Library: Injeção de dependências do Unity Application Block - Parte 2
Contando com diferentes recursos como persistência de dados, injeção de dependência, validação, tratamento de erros e logging, o Enterprise Library procura oferecer opções que tornem mais produtiva a codificação de novas funcionalidades, baseando-se em práticas e padrões com ampla aceitação dentro da área de desenvolvimento de software.
A fim de demonstrar o uso do Enterprise Library, iniciaremos neste artigo a construção de uma aplicação de exemplo, na qual serão utilizados os mecanismos de acesso a dados e injeção de dependência que integram essa coleção de componentes.
Considerando a construção de sistemas em uma organização, não será difícil que certos trechos de código sejam reutilizados ao longo do tempo na implementação de novas aplicações.
Um dos fatores que contribuem para este tipo de prática está na confiança que as equipes de desenvolvimento adquiriram no uso de tais recursos, uma vez que as diferentes funcionalidades providas pelos mesmos demonstraram eficácia e estabilidade na resolução de necessidades específicas.
A eterna busca por mais produtividade, qualidade e padronização é, sem sombra de dúvidas, outro fator que pode pesar para promover o reuso de determinados recursos já implementados anteriormente. Levando em conta as demandas crescentes de diferentes áreas de negócio em uma companhia, sempre existirão pressões por um melhor rendimento das equipes de desenvolvimento.
Essas preocupações ganham uma maior importância diante de exigências como a entrega de soluções dentro de prazos mais curtos, da quantidade reduzida de profissionais disponíveis para um projeto ou, mesmo, de mudanças de escopo quase certas ao longo da condução de tal projeto.
Muitos desses trechos de código reutilizados em vários projetos costumam englobar recursos para logging, classes que facilitam a manipulação de informações a partir de bancos de dados relacionais, mecanismos para injeção de dependência, rotinas para tratamento de falhas, dentre outras rotinas não ligadas diretamente a processos rotineiros de uma organização. Quando organizadas de uma forma que permita o seu reuso, estas funções genéricas correspondem à implementação da Engenharia de Software como “cross-cutting concerns” (BOX 1).
O desenvolvimento de funcionalidades deste tipo requer tempo e investimentos em recursos, principalmente desenvolvedores que ficarão alocados em atividades deste gênero. Isto é algo que não desperta grande interesse por parte de muitas organizações, já que o foco principal está em utilizar os profissionais da área de Tecnologia da Informação para a criação de soluções que resolvam problemas e demandas rotineiras.
Pensando nisto e procurando simplificar o trabalho de desenvolvedores em soluções baseadas na plataforma .NET, a Microsoft lançaria ainda em 2005 a primeira versão do Enterprise Library. Em termos práticos ele corresponde a diferentes conjuntos de componentes organizados em blocos de aplicações. Cada um destes agrupamentos provê meios para a utilização de uma funcionalidade genérica.
O termo “cross-cutting concerns” (algo equivalente em português a “interesses transversais”) refere-se a funcionalidades genéricas, sem uma relação direta com aspectos de negócio e cuja utilização está disseminada ao longo do código de um sistema. Constituem bons exemplos disto mecanismos para autenticação / autorização de usuários, caching, tratamento de exceções, rotinas de acesso a dados, logging, dentre outras ações.
O recomendável é que estas funções de caráter genérico sejam centralizadas, sempre que possível, em algum ponto de uma aplicação. Com esta prática se evita possíveis trechos duplicados de código, algo que certamente aumentaria o trabalho diante da necessidade de alterações futuras no código de uma solução.
Microsoft Enterprise Library: uma visão geral
Cada application block que compõe o Enterprise Liberar (EL) pode ser definido como um conjunto plugável e reutilizável de componentes, os quais foram cria ...
Desbloqueie toda a DevMedia
-
+2000 artigos e vídeos
-
+40 trilhas sobre Front-end, Back-end, IA e muito mais
-
+5000 exercícios práticos
-
Mentorias ao vivo individuais
Confira outros conteúdos:
Teste unitário com NUnit
Como migrar projetos do ASP.NET MVC...
Crie relatórios com o Stimulsoft...
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.