Artigo do tipo Exemplos Pontuais
Recursos especiais neste artigo:
Conteúdo sobre Engenharia.
Aplicações de banco de dados – 1-tier, 2-tier e N-tier
De seu início até os tempos atuais, o Delphi vem tendo uma evolução quase que natural em termos de tecnologia e recursos, sempre acompanhando as principais tendências de mercado. Só para citar, mais recentemente foram feitas melhorias em seu Core, o que inclui seus frameworks clássicos, como VCL e dbExpress, bem como a incorporação de recursos inéditos até então, vide FireMonkey e o suporte a Mac OS X e Win64. Embora tudo isso seja de fundamental importância no desenvolvimento de aplicações, alguns pontos tidos como básicos invariavelmente se mostram essenciais para o contexto da programação propriamente dita. Dentre estes, a arquitetura de software se destaca, uma vez que é a base para a construção das mais variadas aplicações. No Delphi, esta questão arquitetural é essencialmente refletida no desenvolvimento de aplicações 1, 2 ou N camadas, também conhecidas como 1-tier, 2-tier e N-tier. Partindo deste ponto, o artigo irá mostrar os conceitos técnicos que envolvem cada uma destas, a fim de se estabelecer um estudo comparatório entre elas, da teoria à prática.


Em que situação o tema é útil
Historicamente falando, a grande notoriedade do Delphi se refere à sua excelência no que diz respeito ao desenvolvimento de aplicações de banco de dados para a plataforma Windows (Win32) sob a arquitetura Cliente/Servidor. Partindo disto, é importante ter em mente que a ferramenta provê ainda muitas outras possibilidades. Olhando especificamente para o aspecto arquitetural, além do modelo Cliente/Servidor, que é tido como um arquitetura de 2 camadas, se fazem presente ainda ao contexto Delphi as aplicações de 1 e N camadas. Devido a isso, torna-se de grande valia a qualquer desenvolvedor um estudo fundamental sobre cada uma destas alternativas, adquirindo o devido conhecimento sobre cada uma, sempre visando uma eventual utilização.

O desenvolvimento em camadas de uma aplicação de banco de dados representa essencialmente sua segmentação em partes lógicas e físicas. No Delphi, a visibilidade maior desta “divisão” se dá fundamentalmente na questão física, o que acaba por refletir diretamente sobre o número de processos em execução pelo contexto. De forma geral, neste cenário, cada camada representa um processo, caracterizando as aplicações conhecidas como 1-tier, 2-tier e N-tier. Para este último, o N faz menção a um número ilimitado de camadas, ficando a critério do desenvolvedor a sua definição. Todavia, especificamente no Delphi, o N comumente equivale a três camadas.

Dito isto, tendo como base as aplicações de banco de dados, é possível caracterizá-las da seguinte forma:

· 1 camada: aplicações que se utilizam de um banco de dados local;

· 2 camadas: aplicações que utilizam um servidor de banco de dados;

· 3 camadas: aplicações que utilizam um servidor de banco de dados e um servidor de aplicação.

Banco de dados

Em sua essência, um banco de dados pode ser definido como sendo uma coleção disciplinada de dados. No âmbito da programação, isso se reflete em uma coleção de registros (dados) que ficam armazenados na máquina, em arquivos computacionais. Toda a gerência de um banco de dados fica a cargo de um software específico, denominado Sistema de Gerenciamento de Banco de Dados, ou simplesmente SGBD.

A forma com que são estruturados os dados em um banco de dados incide sobre o seu “modelo”. Dentre os existentes, o modelo tido como “relacional” é o que se destaca, sendo atualmente o mais usual e plenamente suportado pelo Delphi. Em sua abrangência, o modelo relacional estrutura as informações do banco em linhas e colunas, distribuídas em várias tabelas relacionadas. Além do modelo, os bancos de dados também são segmentados pelo seu tipo. Por padrão, o Delphi provê suporte a dois tipos: local e remoto.

Banco de dados local

São bancos que residem localmente, seja em disco ou em rede. No popular, são também tratados como “bancos de dados baseados em arquivo”. Alguns velhos conhecidos como o Paradox, dBase e Microsoft Access são alguns exemplos de banco de dados local.

Banco de dados remoto

São os bancos relacionados ao conceito de Servidor de Banco de Dados, uma vez que, comumente, residem em uma estação separada. Cada banco caracteriza um produto diferente e, consequentemente, por ser de fabricantes diferentes, variam em sua maneira de tratar e armazenar os dados. Em razão disso, todos os clientes trabalham sob uma interface lógica comum, que é a SQL (BOX 1), utilizada para se acessar/manipular bancos de dados relacionais. Nestas situações, o servidor de banco de dados passa a ser tratado, em algumas literaturas, como “servidor de banco de dados SQL”. InterBase, Firebird, Oracle, Microsoft SQL Server e MySQL são alguns exemplos mais populares de banco de dados remoto.

BOX 1 - SQL

Structured Query Language, ou simplesmente SQL, pode ser definida como sendo uma linguagem de consulta estruturada, originária dos anos 70. Desde então, tornou-se o padrão adotado para a realização de pesquisas para banco de dados relacional, em razão de sua simplicidade e facilidade de uso. Em outras palavras, é a linguagem mais utilizada para a criação, modificação e recuperação de dados em bancos de dados relacionais. Criada originalmente pela IBM, no decorrer do tempo e fruto de sua própria evolução, a Structured Query Language ganhou novas vertentes desenvolvidas por outros fabricantes, caracterizando assim vários dialetos. Em sua extensão, a SQL é segmentada em vários subconjuntos, de acordo com as operações efetuadas sobre um banco de dados, tais como:

...
Quer ler esse conteúdo completo? Tenha acesso completo