Front-end e Back-end são dois termos muito utilizados no desenvolvimento web e talvez possa ser um pouco frustrante, pois a diferença entre os dois nem sempre é perfeitamente clara.
O front-end também é chamado de cliente e às vezes é considerado “web design”; já o back-end é geralmente chamado de servidor.
Enquanto essa explicação parece simples, a linha entre os dois muitas vezes é confusa. Por isso, mostraremos algumas diretrizes básicas para ajudar a identificar a diferença entre o front-end e o back-end ou, pelo menos, começar a entender o que alguém faz quando diz que é um “desenvolvedor front-end”.
1. Front-end
O front-end é tudo o que o usuário vê, incluindo design e algumas linguagens como HTML e CSS. Há muitos trabalhos diferentes associados ao front-end, e muitos desses títulos são subjetivos e, embora o desenvolvedor front-end possa significar algo em uma empresa, isso pode significar algo completamente diferente em outra empresa. Um título comum de front-end é “web designer”.
O título do trabalho de web designer é bastante amplo, pois pode ser alguém que projeta os sites em um programa como o Photoshop ou o Fireworks e nunca tocará no código. Mas em outro local, um web designer poderia fazer todas as composições de design no Photoshop e, em seguida, ser responsável por criar todo o HTML, CSS e JavaScript para acompanhá-lo.
Um Designer de Interface do Usuário (UI) é basicamente um designer visual e geralmente é focado no design. Eles geralmente não estão envolvidos na implementação do design, mas podem conhecer o básico de HTML e CSS para poderem comunicar suas ideias de maneira mais eficiente aos desenvolvedores.
Um designer ou desenvolvedor de front-end pode criar um site sem nenhum desenvolvimento de back-end, como por exemplo um site estático que não requer nenhuma informação para ser armazenada em um banco de dados.
Um desenvolvedor de front-end deve ser bem versado em HTML, CSS e JavaScript. Essa pessoa pode ou não ter experiência com a criação do design em um programa de design. Uma versão diferente deste título é engenheiro de front-end.
2. Back-end
O back-end é basicamente como o site funciona, atualizações e mudanças. Isso se refere a tudo que o usuário não pode ver no navegador, como bancos de dados e servidores. Normalmente, as pessoas que trabalham no back-end são chamadas de programadores ou desenvolvedores.
Os desenvolvedores de back-end estão mais preocupados com coisas como segurança, estrutura e gerenciamento de conteúdo. Eles geralmente sabem e podem usar linguagens como HTML e CSS, mas isso definitivamente não é o foco deles.
Os desenvolvedores de back-end são necessários para criar um site dinâmico, ou seja, um site que constantemente muda e atualiza em tempo real, como por exemplo portais de notícias e blogs.
Um site dinâmico requer um banco de dados para funcionar corretamente. Todas as informações, como perfis de usuários ou imagens que eles enviaram, ou postagens de blog, são armazenadas no banco de dados.
Os desenvolvedores web trabalham com linguagens de programação como o PHP, pois o código que eles escrevem se comunica com o servidor e informa ao navegador o que usar do banco de dados.