DEV Community

Gabriel J
Gabriel J

Posted on

2

Quais as diferenças entre a Node.js e o navegador?

Eae Dev,

Como é de se esperar, tanto o navegador como a Node.js usam JavaScript como sua linguagem de programação.

Construir aplicações que executam no navegador é uma coisa completamente diferente de que construir uma aplicação de Node.js. Apesar do fato de que sempre é JavaScript, existem algumas diferenças pontuais que tornam a experiência radicalmente diferente.

Node.js e o navegador são ambientes de execução diferentes, com funções distintas. O Node.js é um ambiente de execução do lado do servidor, enquanto o navegador é um ambiente de execução do lado do cliente.

Node.js e o navegador (browser) são ambientes de execução diferentes com funções diferentes. O Node.js é um ambiente de execução do lado do servidor enquanto o navegador é um ambiente de execução do lado do cliente.

Node.js

Node.js é uma plataforma de software livre e de código aberto que permite a execução de código JavaScript fora de um navegador. Ele é construído com base na engine V8 do Google Chrome e fornece um ambiente de tempo de execução para executar o JavaScript no servidor.

Ele permite que desenvolvedores criem aplicativos de rede escaláveis, desenvolvam APIs RESTful e construam aplicativos web em tempo real, entre outras coisas. Ele também fornece uma série de recursos úteis para o desenvolvimento de aplicativos complexos e escaláveis, como entrada e saída de dados não bloqueantes, suporte para threads e manipulação de arquivos.

Browser

Browser (navegador) é um ambiente de execução do lado do cliente que permite que os usuários visualizem e interajam com conteúdo da web. Ele é usado para acessar a internet e renderizar páginas da web. O navegador executa o JavaScript no lado do cliente, é limitado em termos de recursos e funcionalidades que pode fornecer em comparação com o Node.js.

O navegador consegue interagir com a página web em que está sendo executado, mas é limitado em termos de acesso a recursos do sistema, como o sistema de arquivos, que não são acessíveis pelo JavaScript em um navegador.

Um detalhe muito importante é que nós temos uma enorme facilidade, sabemos todas as dificuldades de aprender e nos aprofundar em uma linguagem de programação, e usando a mesma linguagem para realizar todos os papeis do nosso trabalho na web é com certeza uma grande vantagem.

A grande diferença entre os dois é o ecossistema.

No navegador, a maioria do tempo ele interagi com o DOM, ou outras APIs da Plataforma da Web como Cookies. Estes não existem na Node.js, claro. Além disso, não tem o document, window e todos os outros objetos fornecidos pelo navegador.

E no navegador, não temos todas as agradáveis APIs que a Node.js fornece através de seus módulos, como a funcionalidade de acesso ao sistema de ficheiro.

Um outra grande diferença é que na Node.js controlas o ambiente. Exceto se estejamos construindo uma aplicação de código-aberto que qualquer um pode implementar em produção em qualquer lugar, saber qual é a versão da Node.js sobre a qual executamos a aplicação. Comparada ao ambiente do navegador, onde não temos o luxo de escolher qual navegador, os visitantes usarão, isto é muito conveniente.

Isto significa que podemos escrever a JavaScript toda com todos os recursos modernos da ES2015+ que a tua versão de Node.js suportar. Já que a JavaScript move-se muito rápido, mas os navegadores podem ser um pouco lentos em atualizar, algumas web estás preso com o uso de JavaScript ou lançamentos da ECMAScript mais antigos. Tu podes usar a Babel para transformar o teu código para ser compatível com a ES5 antes de entregá-lo ao navegador, mas na Node.js, não precisarás disto.

Um outra diferença é que a Node.js suporta tanto o CommonJS e sistemas de módulo de ECMAScript (desde a versão 12 da Node.js), enquanto no navegador começamos a ver o padrão de Módulos de ECMAScript a serem implementados.

Resumindo, as diferenças entre Node.js e o navegador em relação à execução de JavaScript, destacando que embora ambas as plataformas usem a mesma linguagem, elas têm funções e recursos distintos. Enquanto o Node.js é um ambiente de execução do lado do servidor, o navegador é um ambiente de execução do lado do cliente. Podemos observar diferenças no ecossistema e recursos disponíveis em cada plataforma.

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (0)

Billboard image

Create up to 10 Postgres Databases on Neon's free plan.

If you're starting a new project, Neon has got your databases covered. No credit cards. No trials. No getting in your way.

Try Neon for Free →

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay