Dev

Node.js, o que é? Entenda agora

As vezes eu digo que Node.js é o futuro. Mas está errado. Node.js é o presente. Se você quer fazer apps com Ionic, por exemplo, você precisa ter Node instalado. Até pra brincar com .NET Core, você pode utilizar Node pra criar sua Web API.

E não sei você, mas, eu usei várias vezes o npm, antes mesmo de entender o que é Node.js. Se você está com esse problema, vamos acabar com ele agora.

Node.js, o que é?

Em miúdos, Node é JavaScript do lado servidor. Não entendeu? Com ele, você consegue criar várias tipos de aplicações Web utilizando apenas JavaScript. E isso é sensacional. Não só porque eu sou Front-end e é ‘mais fácil’ fazer uma aplicação toda em JavaScript (vai achando que é tudo moleza com JS), tanto porque ele é bem mais simples que Apache ou IIS – o que implica no fato de que Node.js não é bala de prata, e não deve ser usado pra solução de qualquer problema.

Objetivo

O objetivo do criador, Ryan Dahl, não era colocar JavaScript no lado servidor, mas sim uma forma de fazer I/O, alocando menos memória e criando menos thread, trabalhando de forma assíncrona, possibilitando mais concorrência.

V8 JavaScript Engine

É o interpretador JavaScript, open source, de alta performance do Google, escrito em C++. Ele foi desenvolvido com o objetivo de atender o Google Chrome. Convenhamos, o Chrome, está entre os navegadores mais rápidos, e o V8 é o grande responsável pelo desempenho. Obs: V8, é multiplataforma, portanto, a instalação do Node, é bem simples para qualquer plataforma.

libuv

libuv é uma biblioteca multiplataforma com foco em I/O assíncrono. Foi desenvolvido, primeiramente, para ser usado com Node.js. Não vou entrar em muitos detalhes, mas se você realmente quiser aprender a melhor forma de escalar uma aplicação Node e a melhor forma de fazer I/O, leia a documentação do libuv.

 

 

Core Library

Esse é o terceiro pilar de Node, e também não vou entrar em muitos detalhes, mas Node.js Core Library é composto por módulos escritos em JavaScript como httpstreamclusterdnsnet, crypto, e outros. Eles se conectam através de Bindings C++ com o V8 e a libuv.

Quem está usando Node.js?

 

Eu coloquei um link especificando onde e porque, cada uma das empresas acima usa o Node.js. Lembre-se, não existe bala de prata.

Curtiu? Assim como React.js, se você já conhecia a tecnologia, o texto pode não ter te inserido nenhuma informação nova, mas a ideia geral aqui é dar um resumão pra quem tá querendo entender e conhecendo agora a tecnologia.

Aproveita e curte minha página, pra ficar sabendo dos posts em primeira mão! Dúvida deixa nos comentários, boa leitura!

André Felizardo

Share
Published by
André Felizardo

Recent Posts

Blockchain & Cripto

Desvendando o Potencial da Blockchain e Criptomoedas através da Criptografia Em um mundo onde a…

3 semanas ago

Automatize o deploy de uma aplicação React com Github Actions e FTP

O deploy de uma aplicação React é uma etapa crucial para disponibilizar sua criação na…

10 meses ago

Github Satellite 2020 – Muitas novidades

Satellite 2020 foi a primeira conferência virtual do Github. O Github já tinha sido liberado…

4 anos ago

Web Components – Guia Geral

Neste guia veremos o que são web components, quando usar, sua estrutura e também um…

4 anos ago

Tipos de Frontend

A alguns anos atrás escrevi um texto sobre o que é o frontend, também palestrei…

4 anos ago

SVG – Guia definitivo

O que é SVG é a sigla para Scalable Vector Graphics que traduzindo seria gráficos…

4 anos ago