Aceito convites para um café! :

O que é Node.js: Primeiros passos

O post O que é Node.js: Primeiros passos têm como objetivo apresentar o que é o Node.js e como começar a utilizar essa incrível plataforma.

O que é Node.js?

Node.js é uma plataforma para desenvolvimento de aplicações server-side baseadas em rede utilizando JavaScript e o V8 JavaScript Engine,
interpretador de JavaScript open source implementado pelo Google em C++ e utilizado pelo Chrome ou seja, com Node.js podemos criar uma variedade de aplicações web e desktop utilizando apenas código em JavaScript.

Primeiros Passos

Primeira coisa a se fazer é instalar o Node.js acessando o site nodejs.org. Ao acessar o site você encontrará o arquivo de download.

Sua instalação na plataforma Windows é muito simples, basta clicar no executável, aceitar a licença, escolher o local de instalação e clicar em instalar., basicamente o famoso Next, Next, Next.

Após a instalação, basta executar o comando node -v no seu terminal para verificar se foi instalado corretamente.

O vídeo demonstra um primeiro contato com o Node.js apresentando um alô mundo web e desktop.

Quais as vantagens do Node.js?

O Node.js utiliza a linguagem Javascript, o que facilita encontrar profissionais para trabalhar, pois a linguagem tem algumas décadas de existência e milhões de programadores ao redor do mundo. O mesmo não pode ser dito das plataformas concorrentes.

Node.js permite o Javascript trabalhar full-stack, fato que é uma grande reclamação de muitos programadores web por tem que trabalhar com linguagens diferentes no front-end e no back-end. Node.js resolve isso ao permitir que você trabalhe com JS em ambos e a melhor parte: nunca mais se preocupe em ficar traduzindo dados para fazer o front-end se comunicar com o backend e vice-versa. Você pode usar JSON para tudo.

Node.js é muito leve e é multiplataforma, o que permite rodar projetos em servidores abertos e com o SO que quiser, diminuindo bastante seu custo de hardware (principalmente se estava usando Java antes) e software (se pagava licenças de servidor Windows). Só a questão de licença de Windows que você economiza em players de datacenter como Amazon chega a 50% de economia, fora a economia de hardware que em alguns projetos meus chegou a 80%.

Quais as desvantagens do Node.js?

Node.js usa Javascript. Para quem gosta de linguagens estritas como Java e C# (como eu, confesso), isso incomoda bastante. Não ter orientação à objetos do jeito que estamos acostumados, a tipagem ser fraca, não ter uma compilação bacana, etc.

Node.js é recente (2009). Apesar de já ter muita coisa criada pra ele, isso é uma desvantagem em relação à linguagens mais maduras como a JVM (1995) e Python (1991). Mesmo o .NET (2000) já está bastante calejado e maduro, o que nos garante mais confiança para executar projetos maiores e mais pesados.

Node.js é assíncrono. Isso complica bastante dependendo da complexidade de cada uma das suas requisições, uma vez que o uso demasiado de callbacks pode gerar o chamado callback hell com um aninhamento extenso de funções e uma complexidade absurda de depuração, o que é parcialmente resolvido com o uso de Promises (ES6) e Async/Await (ES7).

Para quê serve Node.js?

Serve para fazer o que você quiser, desde sites à scripts de automação. No entanto, usos ideais de Node.js seriam:

Node.js serve para fazer APIs. Esse talvez seja o principal uso da tecnologia, uma vez que por default ela apenas sabe processar requisições. Não apenas por essa limitação, mas também porque seu modelo não bloqueante de tratar as requisições o torna excelente para essa tarefa consumindo pouquíssimo hardware.

Node.js serve para fazer backend de jogos, IoT e apps de mensagens. Sim eu sei, isso é praticamente a mesma coisa do item anterior, mas realmente é uma boa ideia usar o Node.js para APIs nestas circunstâncias (backend-as-a-service) devido ao alto volume de requisições que esse tipo de aplicações efetuam.

Node.js serve para fazer aplicações de tempo real. Usando algumas extensões de web socket com Socket.io, Comet.io, etc é possível criar aplicações de tempo real facilmente sem onerar demais o seu servidor como acontecia antigamente com Java RMI, Microsoft WCF, etc.

Dica

Acesse nosso canal no YouTube para visualizar outros vídeos sobre programação, como por exemplo Python, Java e Desenvolvimento de sistemas comerciais utilizando a linguagem C#.

Participe do nosso grupo de estudos no Facebook acessando o link https://www.facebook.com/group

Fonte

Parte do conteúdo foi retirada do site luistools.

Links úteis

12 de abril de 2019
Site desenvolvido por © Danilo Filitto. Todos os direitos reservados.