Tecnologia de ponta para o desenvolvimento de sites dinâmicos

AddThis Social Bookmark Button

“O que chamamos de atividade cientifica do progresso, hoje,
será motivo de grande hilariedade e compaixão para as gerações futuras"
-- Tolstoi

Hoje em dia, qualquer mp3 player, celular, PDA, além do PC, é claro, tem acesso à Internet. Você pode imaginar como é complicado desenvolver sites e sistemas para todos estes dispositivos.

Qual será a mágica que os webmasters dos serviços de sucesso usam para tornar isso possível?

Neste artigo você vai conhecer um modelo de desenvolvimento de software que é uma das tendências mais modernas e que simplifica a elaboração de sistemas que de outra forma seriam um pesadelo para qualquer CPD.

Para que você possa entender esta tecnologia com facilidade, deixe-me resumir um pouco da história da criação de software nos últimos 20 e poucos anos.

Antes do PC reinar em tudo que é mesa de escritório, a computação era muito centralizada. Computadores imensos – muitas vezes chamados de cérebro eletrônico – que custavam centenas de milhares de dólares faziam todo o processamento. E devido ao preço, apenas grandes empresas podiam tê-los.

Era muito comum para empresas de menor porte comprarem o tempo ocioso de computadores de outras companhias. Os dados eram encaminhados para uma central, onde eram processados e retornavam na forma de relatórios para os contratantes.

O PC mudou isso. Qualquer micro meia boca de hoje, tem mais poder de fogo que todo um CPD daquela época. E com todo esta capacidade na ponta dos dedos veio a descentralização da informação.

Uma empresa poderia contratar um programador ou um sistema pronto e rodar soluções e aplicativos sem grandes investimentos e com razoável retorno.

O próximo passo foi o surgimento das redes locais. E com elas o conceito cliente/servidor, que estabelece uma relação entre um computador servidor de rede ou de banco de dados e os computadores clientes que são as máquinas que buscam informação no servidor.

Funcionou bem com as LAN (redes locais), mas enquanto as redes cresciam e se espalhavam entre as filiais distantes e com o advento da Internet, o esquema cliente/servidor não servia mais.

Foi daí surgiu o modelo de três camadas (three tiers).

Modelo de Solução de Três Camadas

Os sistemas distribuídos, onde os clientes e servidores não estão fisicamente próximos e muitas vezes são desconhecidos um do outro – quer dizer, o servidor não sabe se o cliente é um pc, um pda ou uma geladeira modernosa – exigiram uma evolução do velho esquema cliente/servidor (duas camadas).

O diagrama a seguir ilustra este modelo:

Diagrama 1. Modelo de Desenvolvimento de 3 Camadas

Neste esquema, o internauta faz uma requisição ao servidor que por sua vez vai buscar as informações no banco de dados que as repassa ao servidor e este se encarrega de apresentá-las ao cliente (navegador).

Adotando este modelo, até mesmo sistemas legados (sistemas desenvolvidos antes do advento da Internet e que, portanto, não foram construídos para suportar a rede) entram no circuito e podem estar disponíveis na Internet em pouco tempo.

No modelo 3 Camadas, você pode converter os dados de sistemas antigos para um formato de rede como xml/html e usá-los diretamente.

Outra vantagem do modelo é que não importa a fonte dos dados. Quando há alguma mudança na tecnologia como uma nova versão do banco de dados, rapidamente as aplicações podem ser adaptadas já que os processos dos aplicativos e a interface com o cliente estão separados dos dados.

O mesmo ocorre quando o upgrade é feito na linguagem de programação utilizada ou mesmo nos processos empresariais. Basta realizar as modificações na camada especifica.

Aplicação em 3 Camadas e sistemas legados

Vamos usar o exemplo do serviço do SPC, que é um serviço que todos conhecem:

Na época em que estive envolvido com este serviço, o SPC usava uma fonte de dados proprietária (COBOL) que não havia sido projetada para a Internet. Como seria possível então dispor o serviço através da Rede?

Simples: criando uma ponte entre o Cobol e uma “fonte de dados” de padrão Internet e aplicando as três camadas no restante do sistema, como vemos no diagrama a seguir:

Diagrama 2. Modelo SPC para Internet em 3 Camadas.

O que o diagrama mostra é que apenas os dados do sistema do SPC que estão em Cobol são traduzidos para um formato amigável para a Internet.

Quando um cliente (internauta) solicita uma consulta na tela de entrada (camada 3) está é passada para os aplicativos (camada 2) que se encarregam de “conversar” com o Banco de dados (camada 1).

Como você pode ver, tanto faz qual é o dispositivo usado na camada do cliente, ele tem condições de responder às necessidades do usuário.

Empresários x webmasters

No dia a dia do meio.ws tenho oportunidade de me relacionar com centenas de empresários e webmasters, e testemunhar muitas discussões entre estes atores. Percebo como o conhecimento de algumas técnicas (como as 3 camadas) podemos elevar a conversa.

Espero que isso permita a você, empresário, exigir de seus programadores uma postura de desenvolvimento que permita a evolução dos serviços com relativa facilidade, e a você, webmaster, enriquecer seu arsenal de técnicas estudando este modelo que vai facilitar muito a sua vida.

Copyright © 2005, Renato Fridschtein. Todos os direitos reservados.