Conheça nosso Grupo De Estudos!



Client-side e Server-side


No artigo hoje veremos as diferenças entre linguagem client-side e linguagem server-side, uma dúvida muito frequente dentre programadores iniciantes, ao se deparar com esse termo em sites/blogs.

Existem dois tipos de linguagens para desenvolvermos para internet, as linguagens client-side e as linguagens server-side. Você poderá encontrar outros termos utilizados por desenvolvedores como, por exemplo, front-end, se referindo às linguagens client-side e back-end se referindo às linguagens server-side, ambas são a mesma coisa.

Porém utilizaremos os termos mais comuns dentre os desenvolvedores para que você possa entender melhor, vamos usar client-side e server-side.

Client-side
As linguagens client-side são linguagens onde apenas o seu NAVEGADOR vai entender. Quem vai processar essa linguagem não é o servidor, mas o seu browser (Chrome, IE, Firefox, etc...). Significa "lado do cliente", ou seja, aplicações que rodam no computador do usuário sem necessidade de processamento de seu servidor (ou host) para efetuar determinada tarefa.

Basicamente, ao se falar de aplicações client-side na web, estamos falando de JavaScript, e AJAX (Asynchronous Javascript And XML).

Existem vantagens e desvantagens ao utilizar o JavaScript e AJAX.

A principal vantagem está na possibilidade de você economizar bandwidth (largura de banda), e dar ao usuário uma resposta mais rápida de sua aplicação por não haver processamento externo.

Outra vantagem ao utilizar, agora o AJAX, seria o apelo visual de sua aplicação e rapidez de resposta. O que o AJAX faz é o processamento externo (server-side) parecendo ser interno (client-side). O usuário não percebe que houve um novo carregamento de página, pois ele busca informações no servidor e mostra rapidamente em um local específico da página através do JavaScript.

A principal desvantagem do JavaScript atualmente é que o usuário pode desativá-lo em seu navegador. Se a sua aplicação basear-se exclusivamente em JavaScript, nesse caso, ela simplesmente não vai funcionar.

Server-side
As linguagens server-side são linguagens que o SERVIDOR (lado do servidor) entende, ou seja, aplicações que rodam no servidor. Isso quer dizer que você vai escrever um código onde o servidor vai processá-lo e então vai mandar para o seu navegador a resposta.

Por exemplo: se criarmos um script em linguagem back-end (PHP, Asp, Java, Ruby, etc) que apenas calcula a soma de 1 + 1, será o SERVIDOR (ou back) que calculará este resultado.

Se fizermos esse cálculo em alguma linguagem front-end, como o JavaScript, quem calculará essa conta é o BROWSER do usuário. Por isso o termo client (ou front).


Os profissionais que trabalham na interface do usuário são chamados de Desenvolvedores front-end, já aqueles que trabalham no core da aplicação, fazendo uma programação que somente o servidor irá entender são chamados de Desenvolvedores back-end.

Exemplos de linguagens
Essas linguagens são linguagens client-side:

HTML
CSS
JavaScript
AJAX

Essas são linguagens server-side:

PHP
ASP
Java
Ruby
Python

Espero que tenha ficado clara a explicação sobre a diferença entre eles, e caso ainda haja dúvidas, procure saber um pouco mais sobre o assunto, nos enviando suas dúvidas, críticas ou sugestões, comentando abaixo e bons estudos

Fonte: GigaSystems