Arquitetura Plugável em .Net - Construa aplicações em módulos com .NET

Iremos construir uma aplicação, utilizando reflection e alguns conceitos de POO para mostrar como é possível construir aplicações de maneira simples e com toda potência, flexibilidade e desacoplamento que esta arquitetura proporciona.

Esse artigo faz parte da revista .NET Magazine edição 49. Clique aqui para ler todos os artigos desta edição
Clique aqui para ler esse artigo em PDF.

Boa Idéia

Arquitetura Plugável em .Net

Construa aplicações em módulos com .NET

Nos dias de hoje, existem diversos tipos de aplicações que sofrem uma quantidade razoável de mudanças em suas regras de negócio. Além disso, a adição de novas regras também é muito freqüente. Por este fato, torna-se cada vez mais necessária a construção de aplicações que possam ser atualizadas ou estendidas com facilidade e rapidez. Um desejo comum de muitos desenvolvedores é simplesmente criar novas partes de um sistema e fazer a publicação dessas partes sem a necessidade de recompilação do “core” da aplicação. Por exemplo, imagine que você simplesmente “copiasse” um assembly contendo as novas regras de negócio para uma determinada pasta, e a aplicação host conseguisse utilizar essa nova “peça” do sistema e aplicasse essas novas regras. Ou seja, desenhar uma aplicação de forma que as peças que a componha possam ser plugadas em tempo de execução.

Não estamos falando simplesmente em “quebrar a aplicação em camadas”. Estamos falando em utilizar um componente sem a necessidade de uma “referência física” dentro do projeto que irá consumir este componente.

Ainda confuso? Vamos ver se com um exemplo as coisas ficam mais claras...

Neste artigo iremos construir uma pequena aplicação, utilizando reflection e alguns conceitos de POO (Programação orientada a objetos) para mostrar como é possível construir aplicações com uma “Arquitetura plugável” de maneira bem simples e com toda a potência, flexibilidade e desacoplamento que esta arquitetura proporciona.

O Problema

A necessidade de uma arquitetura plugável pode ser identificada em diversos cenários e não é muito difícil de ser encontrada em um ambiente real dentro de uma empresa. Aqui neste artigo, para efeito de ilustração da técnica, iremos imaginar a seguinte situação: você é o arquiteto responsável por desenhar uma solução para realizar a “integração” entre alguns sistemas de sua empresa.

A aplicação deverá, a princípio:

Como nós podemos ver, existe uma série de possibilidades relacionadas tanto à entrada de dados quanto à saída, dependendo dos sistemas que nós desejamos integrar. Além disso, seria interessante pensar em uma maneira de atualizar ou acrescentar uma nova “integração” de sistemas, sem a necessidade de deixar as demais “fora do ar”.

Desenhando a solução

A solução de exemplo será composta de uma parte “fixa” (" [...] continue lendo...

Artigos relacionados