Artigo Clube Delphi Magazine 64 - Aplicações MultiCamadas

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Migração simplificada de duas camadas para n-tier.

 

Esse artigo faz parte da revista Clube Delphi edição 64. Clique aqui para ler todos os artigos desta edição

Aplicações Multicamadas

Migração simplificada de duas camadas para n-tier

Na medida em que a arte de desenvolver softwares cresce no mundo, a arquitetura multicamadas vem ganhando espaço em detrimento da arquitetura cliente/servidor. Com isso, muitas empresas investem em soluções grandes e complexas, mas acabam por esquecer o pequeno cliente que gostaria apenas de um “programinha” para cadastrar suas vendas.

Será que toda a sua clientela está disposta a pagar por isso? Vejamos como trabalhar com a portabilidade, visando manter apenas um único padrão para sistemas de duas ou n-camadas.

Escolhendo o caminho

Mais uma vez estamos vivenciando uma quebra do paradigma na construção de um software. O mundo está voltando os olhos para objetos distribuídos e arquiteturas orientadas a serviços. Nosso leque de opções para o desenvolvimento de um sistema cresce a cada dia e um bom gerente de projetos deve saber discriminar a tecnologia a ser empregada em cada caso.

A programação multicamadas também está inserida nesse contexto, no tocante a quando e como deve ser utilizada. O box Vantagens da arquitetura relembra alguns tópicos importantes na tomada de decisão.

A euforia de estarmos sempre inovando e usando as últimas novidades do mercado, pode acabar levando a alguns erros no planejamento de um software. Raramente adotaríamos uma arquitetura multicamadas para uma padaria ou uma farmácia. Para um projeto de grande porte, servidores de aplicações geralmente são aconselhados, pois seu custo é inferior ao da atualização periódica de todo o maquinário da empresa. Isso não acontece em pequenos projetos com poucas máquinas.

Existe ainda um outro conceito, chamado sensibilidade, que também deve ser levado em conta. Se inserirmos uma nova camada em nossa aplicação, certamente teremos uma queda de performance que, às vezes, é quase imperceptível. É preciso saber quanto o seu cliente suportaria de atraso no acesso às funcionalidades do sistema. Desse modo, poderemos levantar os dados necessários à escolha da infra-estrutura a ser utilizada.

Frameworks OO

A engenharia de software oferece uma eficiente solução para diversos problemas relacionados ao desenvolvimento de sistemas. Frameworks de aplicações Orientados a Objetos são conceituados como softwares inacabados, destinados a certo domínio do problema e possuem como fundamentos a abstração, herança, composição e modularização. Têm como resultados esperados: alta produtividade, maior qualidade do produto final, redução nos custos e maior manutenibilidade do software.

Para a construção de um framework OO, faz-se necessária uma equipe com conhecimentos avançados em diversos tópicos como a ferramenta em questão, o tipo de software a ser desenvolvido e principalmente Orientação a Objetos (abstração). Alguns conceitos específicos, ditados pela engenharia de software, também são indispensáveis, outros, como design patterns, melhoram substancialmente a qualidade do projeto.

Contudo, esse processo de construção geralmente não é realizado da melhor maneira. Muitas empresas não investem corretamente na construção do mesmo. Desse modo, não conseguimos o resultado esperado. Uma das soluções mais usadas nesse caso é a terceirização.

Visão mercadológica

Existem hoje muitas empresas que mantêm simultaneamente clientes com alto e baixo poder de investimento. Isso resulta em alguns produtos portadores da arquitetura cliente/servidor e outros n-camadas. Tais empresas, chegam a certo ponto em que gostariam de utilizar a mesma infra-estrutura de uma aplicação de três camadas, em aplicações de duas camadas. Isso mostra a necessidade de portabilidade de código entre as aplicações. Como conseguimos isso? Uma boa saída seria o uso de um framework comum a ambas as arquiteturas. Assim, usufruiríamos de todos os recursos relacionados anteriormente. Aí entra o DataSnap."

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?