Front-end e back-end

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Em ciência da computação, front-end e back-end são termos generalizados que referem-se às etapas inicial e final de um processo. O front-end é responsável por coletar a entrada em várias formas do usuário e processá-la para adequá-la a uma especificação em que o back-end possa utilizar. O front-end é uma espécie de interface entre o usuário e o back-end. Ambos podem estar distribuídos entre um ou mais sistemas.

Desenvolvimento de software[editar | editar código-fonte]

Em arquitetura de software há muitas camadas entre o hardware e o usuário final. Cada uma pode ser dita como tendo um front end e um back end. O front é uma abstração, simplificando o componente subjacente pelo fornecimento de uma interface amigável.

Em projetos de software, por exemplo, a arquitetura modelo-visão-controlador fornece o front end e o back end para o banco de dados, o usuário e para os componentes de processamento. A separação de sistemas de software em front end e back end simplifica o desenvolvimento e separa a manutenção. Uma regra de ouro é que o lado front (ou "cliente") é qualquer componente manipulado pelo usuário. O código do lado servidor (ou "back end") reside no servidor. A confusão surge quando alguém tem que fazer edições no front end para arquivos do lado servidor. Muitos projetistas HTML, por exemplo, não precisam estar no servidor quando eles estão desenvolvendo o HTML. Reciprocamente, engenheiros do lado servidor, por definição, nunca estão em qualquer coisa, mas um servidor. Considera-se os dois para, finalmente, fazer um site web funcional e interativo.

Para subsistemas de computação maiores, um gerenciador de arquivos gráfico é um front endo para o sistema de arquivos do computador e um shell faz a interface com o sistema operacional. O front end reveste o usuário e o bakend executa os programas do sistema operacional em resposta.

Usar a interface de linha de comando (ILC) exige a aquisição de terminologia especial e memorização de comandos, desta forma uma interface gráfica do usuário (IGU) age como um ambiente desktop de front end, em vez disso. No ambiente Unix, ncurses é um front end semi-gráfico simples para a ILC. No nível de ILC do Unix, propriamente dito, muitos programas orientados a stream de bytes (isto é, usando stdin/stdout/stderr como suas interfaces) agem como filtros - programas standalone que também podem servir como front ends e back ends para outros programas. (Eles funcionam canalizando dados entre eles mesmos, muitas vezes para processamento de texto. Por exemplo: $ grep palavra ~usuario/dir/arquivodeentrada | sort | tee ~usuario/dir/arquivodesaida)

Em alguns sistemas, tais como aqueles baseados em Unix chama-se front-end às interfaces gráficas que permitem ao usuário interagir com programas que trabalham originalmente em modo texto.

A título de exemplo temos o comando mkfs pertencente à construção de vários sistemas de ficheiros.

Redes de computadores[editar | editar código-fonte]

Em redes de computadores, front end pode se referir a qualquer hardware que otimiza ou protege o tráfego de rede. Ele é chamado de hardware front end de aplicação devido ser localizado na fronteira da rede. O tráfego de rede passa através do hardware do front end antes de entrar na rede.

Outros usos[editar | editar código-fonte]

Em sistemas de gerenciamento de conteúdo os termos front end e back end podem se referir às visões do usuário final do SGC e as visões administrativas, respectivamente.

Em compiladores, o front end traduz um código fonte de programa de computador em uma representação intermediária e o back end trabalha com a representação intermediaria para produzir código em uma linguagem de saída. O back end normalmente otimiza-se para produzir código que execute mais rápido. A distinção de front-den/back-end pode separar a seção parser que lida com o código fonte e o back end que gera código e o otimiza. Alguns projetos, como o GCC, oferecem escolhas entre vários front ends (analisando linguagens fonte diferentes) ou back ends (gerando código para processadores de alvo diferentes).

Em síntese de voz, o front end refere-se à parte do sistema de síntese que converte o texto de entrada em uma representação fonética simbólica e o back end converte a representação fonética simbólica em sons reais.

No contexto de aplicações WWW, um mediador é um serviço que funciona simultâneamente como um servidor em seu front end e como um cliente em seu back end.[1]

Algumas linguagens para web front-end e back-end:[editar | editar código-fonte]

Front-end[editar | editar código-fonte]

Back-end[editar | editar código-fonte]

Referências

  1. Ka-Ping, Yee. Definition of a Mediator. Ka-Ping. "In the context of WWW applications, a mediator is a service that functions simultaneously as a server on its front end and as a client on its back end."
Ícone de esboço Este artigo sobre Informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.