Arquitetura em vários níveis
15 Dezembro 2020
atualizado em: 6 Novembro 2026
Na engenharia de software, a arquitetura multinível (em camadas, em níveis ou n-tier) é uma arquitetura cliente-servidor que separa as funções de apresentação, processamento e armazenamento de dados. A divisão em camadas também é um dos pilares do design orientado a domínio (DDD). Esse padrão arquitetônico mantém sob controle a crescente complexidade das aplicações e torna-as mais fáceis e flexíveis de modificar.
A arquitetura consiste em várias camadas, cada uma responsável por uma função distinta. Como resultado, alterar uma única camada é mais fácil do que reformular toda a arquitetura. Os desenvolvedores podem criar aplicativos flexíveis e reutilizáveis, o que torna todo o sistema muito mais fácil de gerenciar.
O padrão arquitetônico de camadas ajuda a estruturar aplicações, dividindo-as em grupos de subtarefas, cada um em um nível específico de abstração.
A variante mais comum é a arquitetura de três camadas. Ela geralmente consiste em uma camada de apresentação, uma camada de lógica de negócios e uma camada de dados.
As três camadas principais de uma arquitetura multinível:
- Camada de apresentação. Esta é a primeira e mais alta camada de um aplicativo. É a interface do usuário (UI), a camada que apresenta o conteúdo ao usuário final por meio de uma interface gráfica. Essa camada pode ser acessada a partir de qualquer tipo de dispositivo cliente, como um computador de mesa, laptop, tablet, celular ou thin client. Para exibir o conteúdo ao usuário, as páginas da web relevantes devem ser recuperadas por um navegador da web ou outro componente de apresentação em execução no dispositivo cliente.
- Camada de aplicação. Também chamada de camada de serviço ou camada de controle. A lógica de negócios da aplicação é executada nesta camada. A lógica de negócios é o conjunto de regras necessárias para executar a aplicação de acordo com as diretrizes estabelecidas pela organização. Os componentes desta camada geralmente são executados em um ou mais servidores de aplicação. Às vezes, a lógica de negócios é separada em uma camada própria.
- Camada de dados. Este é o núcleo da arquitetura. Essa camada lida principalmente com o armazenamento e a recuperação de dados da aplicação. Os dados da aplicação são geralmente armazenados em um servidor de banco de dados, um servidor de arquivos ou qualquer outro dispositivo ou meio que suporte a lógica de acesso aos dados. A camada de dados expõe uma API para a camada de aplicação. Essa API torna as operações de dados nessa camada totalmente transparentes, sem afetar a camada de aplicação. Por exemplo, atualizações do sistema nessa camada não afetam a camada de aplicação.
Essas três camadas são essenciais, mas outras camadas podem ser construídas sobre elas, dependendo da complexidade do sistema.
A abordagem em camadas funciona especialmente bem para o desenvolvimento de aplicativos web corporativos e sistemas em nuvem. Ela também facilita a atualização de sistemas legados: quando a arquitetura é dividida em várias camadas, as alterações necessárias são mais simples e de menor escopo do que seriam de outra forma.