{"id":397,"date":"2021-07-13T02:18:07","date_gmt":"2021-07-13T02:18:07","guid":{"rendered":"https:\/\/escolhadev.com.br\/?p=397"},"modified":"2024-04-30T20:26:08","modified_gmt":"2024-04-30T20:26:08","slug":"3-boas-razoes-para-aprender-node-js","status":"publish","type":"post","link":"https:\/\/escolhadev.com.br\/javascript\/3-boas-razoes-para-aprender-node-js\/","title":{"rendered":"3 Boas raz\u00f5es para aprender Node.js"},"content":{"rendered":"\n<p>O JavaScript e o software Open Source podem parecer um mundo onde o boom e o colapso s\u00e3o a norma: crescimento explosivo seguido por uma corrida para o pr\u00f3ximo grande sucesso.<\/p>\n\n\n\n<p>O Node.js, por outro lado, \u00e9 \u00fanico. Embora n\u00e3o seja totalmente novo ele se estabeleceu como uma das ferramentas JavaScript mais usadas no mundo durantes os \u00faltimos anos.<\/p>\n\n\n\n<p>Portanto, se ainda est\u00e1 confuso sobre se deve ou n\u00e3o aprender Node.js, aqui est\u00e3o tr\u00eas boas raz\u00f5es que ajudar\u00e3o voc\u00ea se decidir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1-o-nodejs-permite-escrever-c%C3%B3digo-javascript-no-lado-cliente-e-servidor\">1. O Node.js permite escrever c\u00f3digo JavaScript no lado cliente e servidor<\/h2>\n\n\n\n<p>Portanto, antes de mais nada, vamos direto ao ponto: como Node.js permite escrever c\u00f3digo JavaScript no servidor, vale a pena aprender.<\/p>\n\n\n\n<p>Embora fosse uma linguagem usada principalmente no lado cliente em projetos onde o lado servidor era obrigatoriamente Java ou PHP por exemplo, com o Node.js hoje voc\u00ea pode escrever toda sua aplica\u00e7\u00e3o com JavaScript apenas. Isso sem d\u00favida mudou a percepc\u00e3o do mercado sobre o JavaScript.<\/p>\n\n\n\n<p>Isso \u00e9 significativo, pois implica que as equipes no projeto podem colaborar de forma consideravelmente mais eficaz.<\/p>\n\n\n\n<p>O uso de linguagens diferentes para Back End e Front End costuma ser causa de controv\u00e9rsia. Talvez por que uma equipe \u00e9 limitada \u00e0s suas habilidades prim\u00e1rias. Com isso o sucesso do projeto acaba dependendo e muito de programadores que dominam mais de uma linguagem, mas ainda assim o grupo de ferramentas utilizadas no dia a dia pelas equipes seriam diferentes. Ou seja, \u00e9 mais simples ter um conjunto de ferramentas consistente e comunica\u00e7\u00e3o eficiente se ambas equipes optaram por utilizar JavaScript.<\/p>\n\n\n\n<p>Aprender Node.js \u00e9 uma escolha fant\u00e1stica se voc\u00ea quer ser um&nbsp;<a href=\"https:\/\/escolhadev.com.br\/curso-programador-full-stack-javascript-profissional-do-zero-ao-avancado-em-8-semanas\/\" data-type=\"page\" data-id=\"321\">Programador JavaScript Full Stack<\/a>. Em ess\u00eancia \u00e9 um complemento que estende instantaneamente as possibilidades de solu\u00e7\u00f5es que voc\u00ea pode criar com JavaScript. Profissionalmente falando, isso pode torn\u00e1-lo um membro \u00fatil de verdade em uma equipe de desenvolvimento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"2-o-nodejs-permite-criar-aplica%C3%A7%C3%B5es-poderosas-sem-escrever-c%C3%B3digos-complexos\">2. O Node.js permite criar aplica\u00e7\u00f5es poderosas sem escrever c\u00f3digos complexos<\/h2>\n\n\n\n<p>Outro motivo convincente \u00e9 o fato do Node.js ser otimizado para desempenho. Isso se deve a dois fatores principais: o design ass\u00edncrono do Node.js e seu uso da V8 JavaScript Engine.<\/p>\n\n\n\n<p>O V8 \u00e9 uma das mais r\u00e1pidas implementa\u00e7\u00f5es de JavaScript. Foi escrito em C++ e al\u00e9m de ser usado no Node.js tamb\u00e9m \u00e9 usado no Google Chrome, o popular navegador criado pelo Google.<\/p>\n\n\n\n<p>O outro motivo que torna Node.js poderoso \u00e9 o fato de usar um paradigma ass\u00edncrono para lidar com os dados que trafegam entre cliente e servidor. Para entender melhor considere uma aplica\u00e7\u00e3o com uma arquitetura comum que utiliza E\/S bloqueante: neste caso a aplica\u00e7\u00e3o deve tratar cada requisi\u00e7\u00e3o em ordem, pausando as demais requisi\u00e7\u00f5es at\u00e9 que chegue sua vez de ser processada. Isso aumenta a complexidade de um aplicativo e, como resultado, o torna mais lento.<\/p>\n\n\n\n<p>O Node.js, por outro lado, permite que voc\u00ea utilize E\/S n\u00e3o bloqueante, que usa threads (sequenciais, n\u00e3o simult\u00e2neas) para lidar com v\u00e1rias requisi\u00e7\u00f5es. Se uma requisi\u00e7\u00e3o n\u00e3o pode ser manipulada, esta \u00e9 essencialmente &#8220;retida&#8221; como uma promessa, o que significa que a requisi\u00e7\u00e3o pode ser realizada mais tarde evitando fazer com que outras threads parem.<\/p>\n\n\n\n<p>Como resultado o Node.js pode ajudar voc\u00ea a desenvolver aplicativos sofisticados sem necessariamente aumentar a complexidade do seu c\u00f3digo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"3-nodejs-%C3%A9-adequado-para-construir-microsservi%C3%A7os\">3. Node.js \u00e9 adequado para construir microsservi\u00e7os<\/h2>\n\n\n\n<p>Atualmente no mercado uma abordagem arquitetural que vem crescendo muito s\u00e3o os microsservi\u00e7os. Essa arquitetura oferece para empresas mais agilidade e flexibilidade nos projetos se comparado ao bom e velho mon\u00f3lito. Microsservi\u00e7os t\u00eam muitos benef\u00edcios e, sejam eles apropriados ou n\u00e3o para voc\u00ea agora, eles podem dominar o mundo do software \u00e0 medida que a ind\u00fastria se distancia do design monol\u00edtico.<\/p>\n\n\n\n<p>Esse fato acrescenta ainda mais a import\u00e2ncia de aprender Node.js, uma vez que a tecnologia \u00e9 muito amig\u00e1vel para esse tipo de design. Isso ocorre porque nesta arquitetura voc\u00ea precisa escrever componentes que sejam menores e modulares. Desta forma a aplica\u00e7\u00e3o sendo constru\u00edda se beneficia poderosamente destes componentes mais espec\u00edficos. Isso contrasta com a abordagem monol\u00edtica da arquitetura de software, que \u00e9 quase antag\u00f4nica.<\/p>\n\n\n\n<p>Mesmo que voc\u00ea nunca tenha sido obrigado a lidar com microsservi\u00e7os anteriormente, aprender Node.js \u00e9 uma excelente maneira de se preparar para um futuro no qual eles podem se tornar comuns.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"considera%C3%A7%C3%B5es-finais\">Considera\u00e7\u00f5es finais<\/h2>\n\n\n\n<p>Como dito anteriormente o Node.js se destacou no universo JavaScript e tem sido uma ferramenta muito utilizada pelo mercado nos \u00faltimos anos. Em especial se voc\u00ea tem interesse em\u00a0<a href=\"https:\/\/escolhadev.com.br\/curso-programador-full-stack-javascript-profissional-do-zero-ao-avancado-em-8-semanas\/\" data-type=\"page\" data-id=\"321\">ser um Programador Full Stack<\/a>\u00a0ou estar preparado para a arquitetura de microsservi\u00e7os caso esta venha a ser a norma.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>O JavaScript e o software Open Source podem parecer um mundo onde o boom e o colapso s\u00e3o a norma: crescimento explosivo seguido por uma corrida para o pr\u00f3ximo grande sucesso. O Node.js, por outro lado, \u00e9 \u00fanico. Embora n\u00e3o seja totalmente novo ele se estabeleceu como uma das ferramentas JavaScript mais usadas no mundo [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,1],"tags":[],"_links":{"self":[{"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/posts\/397"}],"collection":[{"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/comments?post=397"}],"version-history":[{"count":1,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/posts\/397\/revisions"}],"predecessor-version":[{"id":759,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/posts\/397\/revisions\/759"}],"wp:attachment":[{"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/media?parent=397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/categories?post=397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/escolhadev.com.br\/javascript\/wp-json\/wp\/v2\/tags?post=397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}