{"id":1352,"date":"2020-07-22T19:09:17","date_gmt":"2020-07-22T22:09:17","guid":{"rendered":"https:\/\/foxiot.siteup.dev\/?p=1352"},"modified":"2023-05-03T18:18:14","modified_gmt":"2023-05-03T21:18:14","slug":"node-js-curiosidades-e-tendencias","status":"publish","type":"post","link":"https:\/\/foxiot.siteup.dev\/en\/node-js-curiosidades-e-tendencias\/","title":{"rendered":"Node.js: curiosidades e tend\u00eancias"},"content":{"rendered":"<p id=\"viewer-foo\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Node.js \u00e9 uma plataforma constru\u00edda sobre o motor JavaScript do Google Chrome para facilmente construir aplica\u00e7\u00f5es r\u00e1pidas e escal\u00e1veis. Essa tecnologia vem crescendo cada vez mais no mercado de desenvolvimento e, como sabemos, \u00e9 amplamente usada por v\u00e1rias empresas do mundo, como Netflix, Uber, AliExpress e LinkedIn. Al\u00e9m dessas empresas, a Fox IoT tamb\u00e9m utiliza essa tecnologia para desenvolver parte de seus projetos, ent\u00e3o vamos discutir um pouco de suas caracter\u00edsticas e tend\u00eancias. <\/span><\/p>\n<div data-hook=\"rcv-block1\"><\/div>\n<p id=\"viewer-19n7f\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> A principal caracter\u00edstica que diferencia o Node.js de outras tecnologias, como PHP e Java, \u00e9 o fato de sua execu\u00e7\u00e3o ser single-thread. Ou seja, apenas uma thread \u00e9 respons\u00e1vel por executar o c\u00f3digo Javascript da aplica\u00e7\u00e3o. Essa thread \u00e9 chamada de Event Loop, e leva esse nome pois cada requisi\u00e7\u00e3o \u00e9 tratada como um evento. O Event Loop fica em execu\u00e7\u00e3o esperando novos eventos para tratar, e para cada requisi\u00e7\u00e3o, um novo evento \u00e9 criado. Enquanto que nas outras linguagens, como \u00e9 poss\u00edvel ver na Figura 1, a execu\u00e7\u00e3o \u00e9 multi-thread, ou seja, uma nova thread \u00e9 criada a cada requisi\u00e7\u00e3o e quando o limite desse recurso \u00e9 atingido, novas requisi\u00e7\u00f5es ter\u00e3o que esperar para serem tratadas. <\/span><\/p>\n<div data-hook=\"rcv-block2\"><\/div>\n<div id=\"viewer-5g245\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _3M0Fe T3Ond1 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block3\"><\/div>\n<div id=\"viewer-3p7ta\" class=\"_2vd5k iG0hRj\">\n<div class=\"_3CWa- N9BmOG N9BmOG _3mymk\">\n<div class=\"_2kEVY\" tabindex=\"0\" role=\"button\" data-hook=\"imageViewer\">\n<div id=\"new-image7553463\" class=\"_3WJnn _2i-Gt _2Ybje\"><img decoding=\"async\" src=\"https:\/\/foxiot.siteup.dev\/wp-content\/uploads\/2023\/05\/a27d24_1cb2c879d3a34381a3cbfe4b850739bbmv2.jpg\" alt=\"\" data-pin-url=\"https:\/\/filipe478.wixsite.com\/foxiot\/post\/node-js-curiosidades-e-tend\u00eancias\" data-pin-media=\"https:\/\/static.wixstatic.com\/media\/a27d24_1cb2c879d3a34381a3cbfe4b850739bb~mv2.jpg\/v1\/fill\/w_785,h_1081,al_c,q_85\/a27d24_1cb2c879d3a34381a3cbfe4b850739bb~mv2.jpg\" data-load-done=\"\" \/><\/div>\n<div class=\"\"><\/div>\n<div class=\"\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div data-hook=\"rcv-block4\"><\/div>\n<p id=\"viewer-3uof8\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _1oG79 VrUyH9 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Figura 1: modelo Node.js versus o tradicional<\/span><\/p>\n<div data-hook=\"rcv-block5\"><\/div>\n<div id=\"viewer-21o35\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _3M0Fe T3Ond1 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block6\"><\/div>\n<p id=\"viewer-a6g8t\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Vejamos, a seguir, alguns exemplos de aplica\u00e7\u00f5es do Node.js:<\/span><\/p>\n<div data-hook=\"rcv-block7\"><\/div>\n<div id=\"viewer-aeepd\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block8\"><\/div>\n<p id=\"viewer-5thd3\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"><strong>#1 APLICA\u00c7\u00d5ES EM TEMPO REAL<\/strong><\/span><\/p>\n<div data-hook=\"rcv-block9\"><\/div>\n<div id=\"viewer-1ucmv\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block10\"><\/div>\n<p id=\"viewer-ftqh6\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> Aplica\u00e7\u00f5es em tempo real s\u00e3o utilizadas amplamente hoje em dia e v\u00e3o desde o rastreamento de um pedido em um aplicativo de entregas, passando por aplicativos de bate-papo at\u00e9 edi\u00e7\u00e3o de documentos online. Este \u00e9 o caso de uso mais comum do Node.js, pois ela requer muito processamento no back-end e aplicativos Node.js. podem servir milhares de servidores para dispositivos e, at\u00e9 mesmo, aplicativos de IoT com uso intensivo de dados e em tempo real. Tamb\u00e9m n\u00e3o \u00e9 preciso se preocupar com o risco de sobrecarregar o servidor, pois o Node.js proporciona um ambiente prop\u00edcio \u00e0 Event APIs e Web Sockets.<\/span><\/p>\n<div data-hook=\"rcv-block11\"><\/div>\n<div id=\"viewer-7u6m5\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block12\"><\/div>\n<p id=\"viewer-96ih2\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"><strong>#2 MICROSSERVI\u00c7OS<\/strong><\/span><\/p>\n<div data-hook=\"rcv-block13\"><\/div>\n<div id=\"viewer-cufn3\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block14\"><\/div>\n<p id=\"viewer-d3mn1\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> Os microsservi\u00e7os est\u00e3o crescendo muito e h\u00e1 uma \u00f3tima perspectiva sobre eles. Eles consistem em uma abordagem arquitetural baseada na cria\u00e7\u00e3o de um aplicativo como um conjunto de pequenos servi\u00e7os. Os microsservi\u00e7os fornecidos pela estrutura Node.js. s\u00e3o \u00fateis para facilitar a manuten\u00e7\u00e3o dos c\u00f3digos e para apoiar a abordagem sem servidor. Os microsservi\u00e7os escritos no Node.js s\u00e3o mais adequados para projetos de n\u00edvel corporativo para melhorar a capacidade de manuten\u00e7\u00e3o e eliminar a d\u00edvida de sua pilha atual. Portanto, o padr\u00e3o de microsservi\u00e7os permite escalabilidade, desenvolvimento e implanta\u00e7\u00e3o independentes e reutiliza\u00e7\u00e3o.<\/span><\/p>\n<div data-hook=\"rcv-block15\"><\/div>\n<div id=\"viewer-8cpa3\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block16\"><\/div>\n<p id=\"viewer-8m9u9\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"><strong>#3 INTERNET DAS COISAS (IoT)<\/strong><\/span><\/p>\n<div data-hook=\"rcv-block17\"><\/div>\n<div id=\"viewer-7amip\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block18\"><\/div>\n<p id=\"viewer-3eg9o\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> Para sistemas distribu\u00eddos geograficamente, rastreamento e recursos em tempo real, o Node.js permite implementar microsservi\u00e7os, recursos em tempo real e abordagens centradas em dados, tornando-se um bom ajuste para a cria\u00e7\u00e3o de aplicativos de IoT. O Node.js ocupa menos mem\u00f3ria e poucos recursos no lado do servidor. Portanto, os desenvolvedores podem criar aplicativos escal\u00e1veis \u200b\u200be eficientes. Na Figura 2, \u00e9 poss\u00edvel visualizar onde o Node.js se encaixa em uma arquitetura de comunica\u00e7\u00e3o com um broker MQTT.<\/span><\/p>\n<div data-hook=\"rcv-block19\"><\/div>\n<div id=\"viewer-8l8o0\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block20\"><\/div>\n<div id=\"viewer-d39s6\" class=\"_2vd5k iG0hRj\">\n<div class=\"_3CWa- N9BmOG N9BmOG _3mymk\">\n<div class=\"_2kEVY\" tabindex=\"0\" role=\"button\" data-hook=\"imageViewer\">\n<div id=\"new-image7553464\" class=\"_3WJnn _2i-Gt _2Ybje\"><img decoding=\"async\" src=\"https:\/\/foxiot.siteup.dev\/wp-content\/uploads\/2023\/05\/4cf471_78deb0cf512c43888577eea4682dc568mv2.png\" alt=\"\" data-pin-url=\"https:\/\/filipe478.wixsite.com\/foxiot\/post\/node-js-curiosidades-e-tend\u00eancias\" data-pin-media=\"https:\/\/static.wixstatic.com\/media\/4cf471_78deb0cf512c43888577eea4682dc568~mv2.png\/v1\/fill\/w_883,h_431,al_c,q_90\/4cf471_78deb0cf512c43888577eea4682dc568~mv2.png\" data-load-done=\"\" \/><\/div>\n<div class=\"\"><\/div>\n<div class=\"\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div data-hook=\"rcv-block21\"><\/div>\n<div id=\"viewer-2uv94\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _3M0Fe T3Ond1 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block22\"><\/div>\n<p id=\"viewer-30trf\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _1oG79 VrUyH9 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Figura 2: Arquitetura MQTT com Node.js<\/span><\/p>\n<div data-hook=\"rcv-block23\"><\/div>\n<div id=\"viewer-diati\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _1oG79 VrUyH9 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block24\"><\/div>\n<p id=\"viewer-672kc\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"><strong>#4 ARQUITETURA SERVERLESS <\/strong><\/span><\/p>\n<div data-hook=\"rcv-block25\"><\/div>\n<div data-hook=\"rcv-block26\"><\/div>\n<p id=\"viewer-2nif1\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> A ado\u00e7\u00e3o no setor est\u00e1 crescendo continuamente porque ficar sem servidor significa que n\u00e3o h\u00e1 necessidade de cuidar dos servidores em execu\u00e7\u00e3o no aplicativo. Com a arquitetura sem servidor, o gerenciamento e o provisionamento do servidor s\u00e3o terceirizados. Economiza tempo e permite introduzir novos recursos. Portanto, essa tend\u00eancia fornece motivos para as empresas manterem a arquitetura pr\u00e1tica sem servidor. Alguns benef\u00edcios que o Node.js prov\u00ea para esta arquitetura s\u00e3o: qualidade de c\u00f3digo, custo reduzido do projeto, m\u00f3dulos de c\u00f3digos reutiliz\u00e1veis e maior flexibilidade.<\/span><\/p>\n<div data-hook=\"rcv-block27\"><\/div>\n<div id=\"viewer-2ejjl\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block28\"><\/div>\n<p id=\"viewer-149g0\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"><strong>#5 PILHA MEAN E MERN<\/strong><\/span><\/p>\n<div data-hook=\"rcv-block29\"><\/div>\n<div id=\"viewer-927ss\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block30\"><\/div>\n<p id=\"viewer-6skio\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> As pilhas MEAN (MongoDB, Express, Angular, Node.js) e MERN (MongoDB, Express, React, Node.js) s\u00e3o duas estruturas completas de desenvolvimento de c\u00f3digo aberto de crescimento mais r\u00e1pido que ajudam os desenvolvedores a desenvolver aplicativos Web e m\u00f3veis complexos e aplicativos Web front-end, respectivamente. Al\u00e9m disso, todos os componentes utilizam a mesma linguagem de programa\u00e7\u00e3o: JavaScript. Isso deve vir a calhar. Os aplicativos com essas estruturas s\u00e3o flex\u00edveis, escal\u00e1veis \u200b\u200be extens\u00edveis, tornando-os o candidato perfeito para hospedagem na nuvem. A pilha inclui seu pr\u00f3prio servidor Web, para que possa ser implementada facilmente, e o banco de dados pode ser escalado sob demanda para acomodar picos de uso tempor\u00e1rios. Um aplicativo MEAN ou MERN entra no mundo otimizado para aproveitar todas as economias de custo e melhorias de desempenho da nuvem. A Figura 3 a seguir mostra como \u00e9 o funcionamento dessas pilhas.<\/span><\/p>\n<div data-hook=\"rcv-block31\"><\/div>\n<div id=\"viewer-23p2\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block32\"><\/div>\n<div id=\"viewer-b5qcq\" class=\"_2vd5k iG0hRj\">\n<div class=\"_3CWa- N9BmOG N9BmOG _3mymk\">\n<div class=\"_2kEVY\" tabindex=\"0\" role=\"button\" data-hook=\"imageViewer\">\n<div id=\"new-image7553465\" class=\"_3WJnn _2i-Gt _2Ybje\"><img decoding=\"async\" src=\"https:\/\/foxiot.siteup.dev\/wp-content\/uploads\/2023\/05\/4cf471_3847e8cac1c54caaa54119c1cdf445c9mv2.png\" alt=\"\" data-pin-url=\"https:\/\/filipe478.wixsite.com\/foxiot\/post\/node-js-curiosidades-e-tend\u00eancias\" data-pin-media=\"https:\/\/static.wixstatic.com\/media\/4cf471_3847e8cac1c54caaa54119c1cdf445c9~mv2.png\/v1\/fill\/w_717,h_379,al_c,lg_1,q_85\/4cf471_3847e8cac1c54caaa54119c1cdf445c9~mv2.png\" data-load-done=\"\" \/><\/div>\n<div class=\"\"><\/div>\n<div class=\"\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div data-hook=\"rcv-block33\"><\/div>\n<p id=\"viewer-nqcg\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _1oG79 VrUyH9 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> Figura 3: Pilhas MEAN e MERN<\/span><\/p>\n<div data-hook=\"rcv-block34\"><\/div>\n<div id=\"viewer-1pgm5\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _1oG79 VrUyH9 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block35\"><\/div>\n<p id=\"viewer-2k3a3\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\"> O ecossistema Node.js vem ganhando for\u00e7a devido a seus recursos e efici\u00eancia. V\u00e1rias marcas globais est\u00e3o aumentando continuamente seu uso, por ser uma tecnologia mais barata, extremamente escal\u00e1vel, resiliente e independente. Essas tend\u00eancias certamente representam um papel decisivo no desenvolvimento de aplica\u00e7\u00f5es web Node.js.<\/span><\/p>\n<div data-hook=\"rcv-block36\"><\/div>\n<div id=\"viewer-1r2ud\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block37\"><\/div>\n<div id=\"viewer-6osf3\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">\u00a0<\/span><\/div>\n<div data-hook=\"rcv-block38\"><\/div>\n<p id=\"viewer-90u1b\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _3M0Fe T3Ond1 WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Publicado por: Fernando Vedoin Garcia<\/span><\/p>\n<div data-hook=\"rcv-block39\"><\/div>\n<p id=\"viewer-b54hi\" class=\"mm8Nw _1j-51 WkT0MK _1FoOD _78FBa qEvi6J WkT0MK public-DraftStyleDefault-block-depth0 fixed-tab-size public-DraftStyleDefault-text-ltr\"><span class=\"_2PHJq public-DraftStyleDefault-ltr\">Acad\u00eamico de Bacharelado em Sistemas de Informa\u00e7\u00e3o, com 6 anos como programador web, 3 anos com gest\u00e3o de projetos e 2 anos com marketing. Interesses em desenvolvimento web e engenharia de software.<\/span><\/p>","protected":false},"excerpt":{"rendered":"<p>Node.js \u00e9 uma plataforma constru\u00edda sobre o motor JavaScript do Google Chrome para facilmente construir aplica\u00e7\u00f5es&#8230;<\/p>","protected":false},"author":21,"featured_media":1353,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Node.js: curiosidades e tend\u00eancias | FOX<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Node.js: curiosidades e tend\u00eancias | FOX\" \/>\n<meta property=\"og:description\" content=\"Node.js \u00e9 uma plataforma constru\u00edda sobre o motor JavaScript do Google Chrome para facilmente construir aplica\u00e7\u00f5es...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/foxiot.siteup.dev\/en\/node-js-curiosidades-e-tendencias\/\" \/>\n<meta property=\"og:site_name\" content=\"FOX\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-22T22:09:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-03T21:18:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/foxiot.siteup.dev\/wp-content\/uploads\/2023\/05\/4cf471_e4a27bed8b514b839f8b5d02f051347cmv2.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"514\" \/>\n\t<meta property=\"og:image:height\" content=\"386\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"pedro\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"pedro\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/\",\"url\":\"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/\",\"name\":\"Node.js: curiosidades e tend\u00eancias | FOX\",\"isPartOf\":{\"@id\":\"https:\/\/foxiot.siteup.dev\/#website\"},\"datePublished\":\"2020-07-22T22:09:17+00:00\",\"dateModified\":\"2023-05-03T21:18:14+00:00\",\"author\":{\"@id\":\"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/84cf9faf0d2ff95da8a222382950e76c\"},\"breadcrumb\":{\"@id\":\"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/foxiot.siteup.dev\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Node.js: curiosidades e tend\u00eancias\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/foxiot.siteup.dev\/#website\",\"url\":\"https:\/\/foxiot.siteup.dev\/\",\"name\":\"Fox Internet of Things\",\"description\":\"Internet of Things\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/foxiot.siteup.dev\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/84cf9faf0d2ff95da8a222382950e76c\",\"name\":\"pedro\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/beca8cdf914efa972b2ffac6dbb5f1a1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/beca8cdf914efa972b2ffac6dbb5f1a1?s=96&d=mm&r=g\",\"caption\":\"pedro\"},\"url\":\"https:\/\/foxiot.siteup.dev\/en\/author\/pedro\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Node.js: curiosidades e tend\u00eancias | FOX","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Node.js: curiosidades e tend\u00eancias | FOX","og_description":"Node.js \u00e9 uma plataforma constru\u00edda sobre o motor JavaScript do Google Chrome para facilmente construir aplica\u00e7\u00f5es...","og_url":"https:\/\/foxiot.siteup.dev\/en\/node-js-curiosidades-e-tendencias\/","og_site_name":"FOX","article_published_time":"2020-07-22T22:09:17+00:00","article_modified_time":"2023-05-03T21:18:14+00:00","og_image":[{"width":514,"height":386,"url":"https:\/\/foxiot.siteup.dev\/wp-content\/uploads\/2023\/05\/4cf471_e4a27bed8b514b839f8b5d02f051347cmv2.webp","type":"image\/webp"}],"author":"pedro","twitter_card":"summary_large_image","twitter_misc":{"Written by":"pedro","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/","url":"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/","name":"Node.js: curiosidades e tend\u00eancias | FOX","isPartOf":{"@id":"https:\/\/foxiot.siteup.dev\/#website"},"datePublished":"2020-07-22T22:09:17+00:00","dateModified":"2023-05-03T21:18:14+00:00","author":{"@id":"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/84cf9faf0d2ff95da8a222382950e76c"},"breadcrumb":{"@id":"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/foxiot.siteup.dev\/node-js-curiosidades-e-tendencias\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/foxiot.siteup.dev\/"},{"@type":"ListItem","position":2,"name":"Node.js: curiosidades e tend\u00eancias"}]},{"@type":"WebSite","@id":"https:\/\/foxiot.siteup.dev\/#website","url":"https:\/\/foxiot.siteup.dev\/","name":"Fox Internet of Things","description":"Internet of Things","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/foxiot.siteup.dev\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/84cf9faf0d2ff95da8a222382950e76c","name":"pedro","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/foxiot.siteup.dev\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/beca8cdf914efa972b2ffac6dbb5f1a1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/beca8cdf914efa972b2ffac6dbb5f1a1?s=96&d=mm&r=g","caption":"pedro"},"url":"https:\/\/foxiot.siteup.dev\/en\/author\/pedro\/"}]}},"_links":{"self":[{"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/posts\/1352"}],"collection":[{"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/comments?post=1352"}],"version-history":[{"count":2,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/posts\/1352\/revisions"}],"predecessor-version":[{"id":1429,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/posts\/1352\/revisions\/1429"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/media\/1353"}],"wp:attachment":[{"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/media?parent=1352"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/categories?post=1352"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/foxiot.siteup.dev\/en\/wp-json\/wp\/v2\/tags?post=1352"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}