O que é back-end

Back-end e front-end são termos que se referem a lados independentes e opostos, apesar de complementares, de qualquer software. Se compararmos um software com um carro, podemos afirmar que o back-end seria o motor, o chassi, a parte elétrica e os demais elementos estruturais. O front-end, por sua vez, abarcaria o volante, o painel, os botões de abrir e fechar janelas e as demais estruturas feitas para o motorista usar ativamente.

Definição

Back-end é o bastidor, ou seja, a parte “de trás” dos sites e aplicações, inacessível a usuários finais. É no back-end que se dá tanto o armazenamento quanto o processamento de dados.

O que compõe o back-end?

O back-end é composto de dois elementos:

  1. Da parte de um software que processa os dados.
  2. Da área administrativa de um software, inacessível a usuários finais.

Um software pode ser compreendido como uma máquina de processamento de dados, que executa cálculos e faz uso dos resultados obtidos para decidir como agir. Ainda, softwares criam e armazenam dados em bancos de dados, como no MongoDB e no MySQL. Ele faz tudo isso nos bastidores, ou seja, no background, longe dos olhos e do alcance dos usuários.

Ao contrário do front-end, orientado aos usuários finais, o back-end é orientado às necessidades técnicas de um software. Eficiência, desempenho, escalabilidade e segurança estão entre as suas responsabilidades.

Para respeitar o princípio da separação de interesses da programação, back-end e front-end são implementados como camadas independentes. No entanto, ambas as camadas são igualmente necessárias para que um software funcione plena e corretamente. Assim, um back-end sem um front-end nada mais é que uma máquina sem botões que possibilitem a operação dela.

Nota

Se você quer se aprofundar nas diferenças entre o back-end e o front-end, acesse esse artigo especializado do nosso Digital Guide.

Quem pode acessar o back-end?

Dois grupos de profissionais podem acessar e trabalhar no back-end de um site ou aplicação:

  1. Administradores de sistemas (admins), que precisam acessar o back-end para gerenciar o respectivo sistema.
  2. Desenvolvedores back-end, para criar, manter e continuar a desenvolver o código do respectivo software.

A seguir explicaremos, em mais detalhes, o papel de cada um desses grupos de profissionais que atuam no back-end:

Quais são os papéis de administradores de sistemas no back-end?

Para respondermos a essa pergunta, tomaremos o popular sistema de gerenciamento de conteúdo (CMS) WordPress como exemplo. Se você realizar login no WordPress como administrador, será redirecionado ao back-end do seu site, também chamado de Painel. É por essa interface que você poderá criar, editar e excluir conteúdo.

Dica

Com o Managed WordPress Hosting da IONOS, o seu site WordPress ficará bem mais rápido e seguro.

Além de operações CRUD básicas, pelo back-end do WordPress, administradores gerenciam elementos como funções de usuários WordPress e plugins de backup do WordPress.

Nota

Embora tecnicamente o Painel do WordPress seja considerado um back-end, ele é disponibilizado por uma interface gráfica de usuário (considerada um front-end), o que prova que back-end e front-end podem, em determinadas situações, se misturar.

Quais são os papéis de desenvolvedores no back-end?

Ao contrário de administradores, desenvolvedores não precisam fazer login para acessar o back-end de um site ou aplicação. Na verdade, eles utilizam um ambiente de desenvolvimento para desenvolver o código-fonte do back-end, que será executado em um servidor ou contêiner.

Depois da realização de testes majoritariamente autônomos, os códigos desenvolvidos são carregado em servidores por meio de ferramentas de integração contínua ou por plugins — alguns plugins de desenvolvimento do WordPress executados no back-end podem ser gerenciados por admins.

Ao contrário do front-end, que é executado no cliente, o back-end é executado no servidor. Via de regra, pilhas de tecnologia (web stacks) são usadas para o desenvolvimento e para a execução de códigos. Entre as diversas pilhas de tecnologia populares estão LAMP e MEAN.

Uma pilha de tecnologia possui um sistema operacional ou contêiner como ambiente de execução. Dentro desse ambiente, um servidor web recebe e responde às solicitações . Os scripts são executados em uma linguagem de programação web e servem de conexão entre o servidor e o banco de dados:

Pilha de tecnologia Ambiente de execução Servidor Banco de dados Linguagem de programação
LAMP Linux Apache MySQL PHP
MEAN Node.js Express.js MongoDB Angular (JavaScript)

Desenvolvedores back-end costumam usar frameworks web para simplificar a consulta, o processamento e o armazenamento dos dados. Por esse motivo, apresentaremos, a seguir, alguns dos frameworks mais importantes para desenvolvedores back-end.

Nota

Programadores que desenvolvem tanto o back-end quanto o front-end de sites e aplicações são chamados de desenvolvedores full stack.

Quais são os frameworks mais importantes para o back-end?

Frameworks ajudam a simplificar o trabalho de desenvolvimento do back-end de um site ou aplicação. Por exemplo, é graças a um framework para back-end que você não precisa criar códigos do zero e repetidas vezes, como ao desenvolver processos de autenticação de usuários e de conexão com o banco de dados. Frameworks costumam integrar linguagens e templates diferentes para gerar o código HTML que será utilizado pelo front-end.

O melhor framework para back-end a ser usado dependerá do seu ambiente de desenvolvimento e da linguagem de programação utilizada. As linguagens de programação mais comuns são PHP, Python, Ruby, JavaScript e Java. Para essas linguagens, apresentaremos os frameworks para back-end mais populares e interessantes.

Symfony e Laravel: Frameworks para back-end em PHP

Symfony e Laravel são dois dos mais populares frameworks para back-end que existem. Ambos podem ser usados na programação de aplicações web sofisticadas, sem que você precise começar o trabalho do zero. Enquanto o Laravel é mais simples e, portanto, mais fácil de aprender a usar, o Symfony é uma opção mais robusta e flexível.

Os dois frameworks são igualmente populares pelo design modular. Muitas das tecnologias web mais úteis foram escritas a partir do Symfony. O Laravel, por sua vez, também contribui bastante com os seus templates Blade.

Ruby on Rails: O clássico framework para back-end em Ruby

O framework para back-end Ruby on Rails (RoR) foi considerado revolucionário ao ser lançado e ajudou a linguagem de script Ruby a alcançar seu grande sucesso. Ousamos dizer que não existe nenhum outro framework tão focado em produtividade e satisfação dos desenvolvedores quanto esse. Ainda, o RoR popularizou a abordagem model-view-controller (MVC), abrindo portas para diversos frameworks para back-end que o sucederam.

Dica

Este tutorial do nosso Digital Guide ensina você como criar uma aplicação com Ruby on Rails.

Django: Framework para back-end para programar em Python

Python é uma linguagem de script web clássica. Já o Django é o poderoso framework para back-end que permite que aplicações web em Python sejam desenvolvidas muito mais rapidamente. Ele também adota o padrão model-view-controller, além de possuir um mecanismo próprio de templates.

Dica

Quer começar a programar em Python? Comece pelo nosso tutorial introdutório de Python.

Express e Node.js: Escrever aplicações web em JavaScript

Antigamente, uma linha invisível separava as linguagens de programação destinadas ao back-end e ao front-end. HTML, JavaScript e CSS eram exemplos de linguagens utilizadas somente pelo front-end, enquanto linguagens como PHP, Python, Perl e Ruby eram exclusivas para o back-end. Contudo, assim que o ambiente de execução Node.js para JavaScript foi lançado, essa linha invisível se rompeu. Ele fez com que fosse possível usar JavaScript tanto no front-end quanto no back-end.

O Node.js oferece toda a base para a criação de aplicações web em JavaScript, além de possibilitar que frameworks web como o Express sejam usados sobre ele. A combinação Express e Node.js se popularizou como parte da pilha de tecnologia MEAN, com o MongoDB e o framework para front-end Angular.

Spring: Framework para back-end para aplicações web em Java

Sozinha, a linguagem de programação Java não é considerada suficiente para o desenvolvimento de aplicações web modernas. No entanto, graças ao framework Spring, já é possível desenvolver aplicações complexas em Java, em uma base estável. Desenvolvimentos mais novos, como o Quarkus, possibilitam execuções de alto desempenho em contêineres.

Dica

O tutorial de Spring do nosso Digital Guide ensina você como criar aplicações em Java com o framework Spring.

Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top