Desenvolvimento de um único aplicativo da Web normalmente requer dois ou mais diferentes linguagens de programação . Por exemplo, um aplicativo da Web típico pode executar script PHP em um servidor Web Apache e JavaScript no PC do usuário. Isso faz com que o desenvolvimento de software e processos de depuração mais complexo e propenso a erros. Enquanto várias empresas no passado desenvolveu versões do JavaScript para funcionar em um servidor Web , foi o lançamento de " V8 " o motor do Google JavaScript que renovou o interesse em uma versão de servidor de JavaScript. Node.js incorpora " V8 " e oferece não só uma linguagem comum cliente e do lado do servidor , mas também proporciona melhorias significativas na velocidade mais línguas do lado do cliente atual em execução no Apache . Cliente- Side Scripting
JavaScript é predominantemente uma linguagem de script do lado do cliente , porque ele executa o seu código no cliente ou usuário de , computador. Todo o script é carregado ou armazenado em cache na memória no PC cliente e interpretado pelo navegador , que contém um motor de JavaScript. Porque é residente na memória, do lado do cliente JavaScript pode verificar a valores em um formulário e pode manipular o conteúdo de uma tela " on-the- fly" , sem ter que os resultados da rota de volta para um servidor Web Apache . No entanto , o código do lado do cliente pode ser lido e até mesmo alterado por um usuário no PC cliente .
Server-Side Scripting
A linguagem de script do lado do servidor executa a sua código em um servidor web. Por exemplo , PHP é uma linguagem de script popular mais comumente implementado em um servidor Web Apache . Enquanto linguagens do lado do servidor não pode alterar o conteúdo de telas sem enviar dados de volta para o servidor Web , eles podem interagir com os recursos no servidor Web , como um banco de dados, para gerar páginas dinâmicas baseadas em código de script. Código do lado do servidor também é protegido pelo servidor Web , que só vai executá-lo. Quando configurado corretamente , um servidor Apache nunca envia código PHP -prima para uma máquina cliente.
Desvantagem de línguas diferentes
desenvolvimento de software seria mais fácil se houver eram uma linguagem comum para as tarefas do lado do cliente e do lado do servidor . Hoje, diferentes linguagens de script fornecer resultados diferentes para o que parecem ser idênticas funções . Por exemplo, quando você consulta o tempo atual em relação a 1 de Janeiro de 1970 em PHP , a função retorna o número de segundos . A mesma consulta em JavaScript retorna o número de milissegundos. Um programador precisa saber disso e ajustar tanto o resultado JavaScript ou PHP quando se tenta comparar valores entre línguas. Os programadores que trabalham com equipes precisam chegar a acordo sobre um padrão para a conversão de valores entre as línguas. Há muitos exemplos desses tipos de inconsistências que tornam a criação e depuração de aplicativos que usam tanto do lado do cliente eo código do lado do servidor muito mais difícil e demorado.
JavaScript " V8 "
Várias empresas desenvolveram versões do servidor de JavaScript em uma tentativa de permitir que os programadores a usar uma única linguagem no desenvolvimento de aplicações . Aptana desenvolvido Jaxster baseado no motor Gecko Mozilla FireFox que poderes . Microsoft incorporou JavaScript em sua linguagem ASP. No entanto, quando o Google lançou seu navegador Chrome , ele revelou um motor de JavaScript chamado " V8 ", que é extremamente rápido e relativamente fácil de incorporar em outras aplicações. Isto levou ao desenvolvimento de server-side JavaScript , que não só fornece uma linguagem consistente entre o cliente eo servidor , mas também oferece um desempenho significativamente melhor do que as linguagens do lado do servidor atuais. Por exemplo, a partir de Joyent Node.js é um JavaScript do lado do servidor orientado a eventos para o Apache que está ganhando popularidade.