Baixe o app para aproveitar ainda mais
Prévia do material em texto
Node.js Apresentação A área de desenvolvimento de software está em constante evolução. Tecnologias novas vêm surgindo em ritmo acelerado, novas plataformas e conceitos vêm sendo difundidos e o desafio é cada vez maior. O desenvolvimento de software para dispositivos móveis é uma área com diversas oportunidades. O uso de dispositivos móveis faz parte do cotidiano das pessoas e, diferentemente do passado, em que estes eram utilizados para realizar e receber chamadas, atualmente, por meio de diversos aplicativos, estão sendo utilizados para infinitas atividades. Nesta Unidade de Aprendizagem, você aprenderá sobre a tecnologia Node.js, uma tecnologia moderna e que serve de base para outras. Além disso, conhecerá o seu gerenciador de pacotes, o NPM. Por fim, verá como iniciar um desenvolvimento de aplicativo com o framework Ionic. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Definir o Node.js e como funciona o seu ambiente.• Descrever a utilização do Node.js, npm, ionic e vscode.• Praticar o uso do Node.js no desenvolvimento de um pequeno exemplo.• Infográfico O Node.js é uma tecnologia nova, a qual está sendo usada por grandes empresas como a Netflix, o PayPal, entre outras. No meio de diversas outras tecnologias, as características do Node.js fazem dele uma boa opção para quem busca desempenho e economia. Neste Infográfico, você vai conhecer essa tecnologia, verificando como ela é formada, assim como as suas principais características. Conteúdo do livro Em um mercado cada vez mais competitivo, novos paradigmas de desenvolvimento vêm surgindo. A área de desenvolvimento de software vem evoluindo cada vez mais, e grandes players do mercado estão aderindo tecnologias mais novas com a finalidade de ter um consumo menor dos seus recursos computacionais, gerando maior desempenho e economia. No capítulo Node.js, da obra Desenvolvimento para dispositivos móveis, base teórica desta Unidade de Aprendizagem, você vai conhecer mais sobre essa tecnologia emergente, além de como utilizá-la no desenvolvimento de suas aplicações. Além disso, vai verificar o que é utilizado para gerenciar módulos de um projeto de maneira fácil, e como iniciar o desenvolvimento de um aplicativo móvel utilizando um bom editor de códigos. Por fim, vai ver a criação de uma aplicação utilizando o Node.js. Boa leitura. DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS Felipe Andery Reis Node.js Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: � Definir o Node.js e como funciona seu ambiente. � Descrever a utilização do Node.js, Node Package Manager, Ionic e Visual Studio Code. � Praticar o uso do Node.js no desenvolvimento de um pequeno exemplo. Introdução As tecnologias em geral estão se revolucionando, e no mundo de desenvolvimento de software, isso também ocorre. Se você pensar em um passado próximo, perceberá que muitas tecnologias já foram e continuam sendo criadas para permitir que os processos de desen- volvimento se tornem mais ágeis e eficientes. Em um cenário cada vez mais competitivo, as empresas optam por soluções mais simples, cujas ferramentas de desenvolvimento sejam mais eficazes para criar seus produtos e serviços. Neste capítulo, você estudará a plataforma Node.js, sua definição, seu funcionamento, sua utilização com um exemplo prático e seus compo- nentes, como o gerenciador de pacotes do Node (npm, em inglês node package manager); a plataforma Ionic, que cria aplicativos móveis cuja base é o Node.js; e o Visual Studio Code (VSCode), um editor de códigos para desenvolver programas. Plataforma Node.js Em 2009, motivado pela ideia de criar uma tecnologia que pudesse oferecer um melhor aproveitamento dos recursos de máquina, como central process unit (CPU) e memória, e deixar que os processos em execução ficassem o menor tempo ociosos, o pesquisador e engenheiro Ryan Dahl criou a plataforma Node.js, um ambiente de execução JavaScript orientado a eventos, assíncrono e open source. A linguagem JavaScript era utilizada nos navegadores e servia para criação de animações, efeitos e ações em páginas Web, depois, começou a ser empregada em aplicações que fossem desvinculadas do navegador. Assim, o Node.js poderia usar seus recursos para criação de aplicações Web que rodam ao lado do servidor, como as aplicações back-end e Desktop, Application Programming Interface (API), utilitários de linhas de comando, etc., abrindo muitas oportunidades para empresas no desenvolvimento de produtos e serviços. O Node.js é baseado em alguns componentes, como o motor ou engine V8, um interpretador JavaScript criado pelo Google e utilizado no navegador Chrome; e a Libuv, uma biblioteca que fornece suporte a várias funcionali- dades, por exemplo, a conexão de rede ou ao banco de dados, o acesso aos dispositivos de entrada e saída, entre outras. O motor V8 é um interpretador de JavaScript e WebAssembly, criado pelo Google e escrito em C++, open source e com alto desempenho. Ele pode ser executado em multiplataformas, como Windows, Mac e Linux, sendo mais utilizado em navegadores (p. ex., Chrome) e no Node.js, que a usa em sua base. Para saber mais, acesse o site oficial no link a seguir. https://v8.dev/ Inicialmente utilizado no Node.js, o Libuv é um framework que oferece suporte multiplataformas e tem como principal objetivo trabalhar como um modelo assíncrono de entrada e saída, fazendo determinado processo em execução não atrapalhar outras tarefas antes que ele tenha terminado. Suas principais características incluem o suporte aos protocolos Transmission Control Protocol (TCP), User Datagram Protocol (UDP) e Domain Name System (DNS), bem como as operações com arquivos e sistemas de arquivos. Essa biblioteca também é utilizada por outras tecnologias, como Lua, Julia e Python. Para saber mais, acesse o site oficial no link a seguir. http://libuv.org/ Node.js2 Criado em 2013, o Electron é um framework open source, permite criar aplicativos Desktop que podem ser executados em várias plataformas e tem como base a combinação dos componentes Chromium e Node.js. Se você deseja utilizar o Node.js para criar aplicações Desktop, acesse o link a seguir e saiba mais. https://qrgo.page.link/JEMAZ Funcionamento Muitas aplicações Web empregam um modelo bloqueante, ou blocking thread, para lidar com processos de entrada e saída, fazendo os recursos utilizados na máquina não funcionarem de forma eficiente. Isso reflete um comportamento síncrono, em que uma operação ocorrerá depois de outra (PEREIRA, 2013). Considerando que a maioria dos servidores tradicionais são multithreaded, portanto, para cada requisição no servidor, uma thread é criada, imagine uma requisição em um servidor Web para a operação de leitura e escrita no banco de dados. Sendo essa tarefa dispendiosa, a thread responsável pelo processamento ficará em estado de espera (wait) até que a operação no banco de dados seja concluída, para logo depois continuar o processo e enviar uma resposta à requisição. Caso existam outras requisições no servidor nesse tempo, threads serão criadas e ficarão em wait em processos mais custosos. Esse tempo em que elas ficam ociosas aguardando a finalização do processamento faz a alocação dos recursos computacionais (como a memória) não ser eficiente. Portanto, ao empregar o modelo bloqueante, pode-se perceber que manter uma fila de threads ociosa não é muito interessante. Na Figura 1, você pode ver um exemplo desse modelo. 3Node.js Figura 1. Modelo bloqueante. Nova thread Nova thread Thread em espera Servidor tradicional Tarefa dispendiosa Requisições No Node.js, isso acontece de forma diferente, pois uma nova requisi- ção no servidor não gera uma nova thread, ao contrário, ele oferece uma arquitetura não bloqueante, baseada em eventos que seguem o modelo de thread única (single thread), chamada de Event Loop. Além disso, o Node.js fornece um Worker Pool ou pool de threads para lidar com os processos mais dispendiosos, como leitura e escrita de arquivos, acesso ao banco de dados, entre outros. Quando chega uma requisição no Event Loop, ele verifica se a tarefa é bloqueante/dispendiosa, caso ela demande um tempo de processamento maior, é enviada ao processamento no pool de threads, cuja operação ocorre de forma assíncrona. Ele funciona como um laço infinito, processando as requisições e enviando as tarefas mais dispendiosas ao pool de threads. Quando existir a finalização de alguma tarefa bloqueante, o retorno é enviado ao Event Loop para que ele continue sua execução (PEREIRA, 2013). Veja na Figura 2 um exemplo de modelo não bloqueante. Node.js4 Figura 2. Modelo não bloqueante. Fonte: Adaptada de Kiran (2015, documento on-line). Ao ser iniciado, o Node.js realiza a inicialização do Event Loop, processa algum script de entrada fornecido, pode fazer chamadas de API assíncronas, agendar cronômetros ou chamar processos como o process.nextTick() e, depois, começa a processar o Event Loop. Para saber mais sobre o tema, acesse o link a seguir. https://qrgo.page.link/AdZ3e Vantagens e desvantagens Assim como qualquer tecnologia, a plataforma Node.js tem vantagens e des- vantagens. A seguir, você pode ver algumas de suas vantagens. � Enorme comunidade ativa, milhares de pacotes disponíveis para reu- tilização e vários casos de estudo de grandes empresas, como PayPal, Netflix, Walmart, entre outros. � Poucos recursos computacionais, incluindo baixo consumo de random access memory (RAM) e um melhor aproveitamento da CPU. 5Node.js � Curva de aprendizagem é baixa para desenvolvedores Web que já pro- gramam em JavaScript. � Existência de bibliotecas, pacotes e plug-ins distribuídos pelo npm. Já suas desvantagens incluem: � Alguns desenvolvedores se sentem incomodados com a utilização da linguagem JavaScript. � Tecnologia praticamente nova (desde 2009). � Não recomendado em aplicações que demandam alto uso da CPU, devido à existência de muitos cálculos. � Modelo assíncrono se torna um fator complicador devido ao grande número de callbacks que possam existir. Utilização do Node.js Para usar o Node.js e executá-lo em uma máquina local, deve-se configurar o ambiente de desenvolvimento. O primeiro passo é fazer o download da instalação pelo site oficial da plataforma e seguir seus passos para o sistema operacional. O download do Node.js pode ser feito pelo site oficial, no qual os pacotes de instalação para as plataformas Windows, Mac e Linux estão disponíveis. Para saber mais, acesse o link a seguir. http://nodejs.org Uma vez que o Node.js foi instalado corretamente na máquina, sua versão pode ser verificada por meio do comando node –v. Se o Windows for o sistema operacional utilizado, pelo prompt de comandos, basta digitar o comando conforme você pode ver na Figura 3. Node.js6 Figura 3. Verificando se o Node.js foi instalado corretamente. Para realizar um teste rápido com um trecho de código JavaScript, sem a necessidade de criar um arquivo com extensão .js, pode-se utilizar o console interativo do Node.js, basta digitar o comando node no prompt de comandos. Na Figura 4, você pode ver seu uso para exibir a mensagem “Olá Mundo Node.js”, por meio do comando console.log() do JavaScript. Figura 4. Exibindo uma mensagem por meio do console interativo do Node.js. O console interativo do Node.js é conhecido como read-eval-print loop (REPL). Para saber mais sobre o assunto, acesse o site oficial no link a seguir. https://nodejs.org/api/repl.html Caso você não queira utilizar o console interativo, um arquivo JavaScript pode ser criado. Por exemplo, considere que o arquivo app.js contém o código console.log(“Olá Mundo Node.js”), portanto, para verificar seu funcionamento, basta executá-lo por meio do comando node app.js, conforme apresentado na Figura 5. 7Node.js Figura 5. Exibindo uma mensagem por meio do arquivo app.js. Você pode deixar sua aplicação Node.js acessível publicamente. Saiba mais sobre várias opções para hospedá-la acessando o link a seguir. https://qrgo.page.link/HZPfo Utilização de um editor de códigos para desenvolvimento Para desenvolver códigos JavaScript e rodá-los com o Node.js, você pode es- colher um entre vários editores ou ambientes de desenvolvimento disponíveis, como o VSCode, um editor bem conhecido e utilizado. Criado pela Microsoft, o VSCode é um editor de código-fonte gratuito e leve, que fornece suporte para diversas operações de desenvolvimento, como depuração, execução de tarefas e controle de versão. Ele está disponível para multiplataformas (Windows, Mac e Linux), já vem com suporte nativo para as tecnologias JavaScript, TypeScript e Node.js, além de ter uma grande quanti- dade de extensões para outras linguagens de desenvolvimento. Na Figura 6, você pode observar esse tipo de editor. Node.js8 Figura 6. Editor de códigos VSCode. a) Barra de atividades, que permite alternar as exibi- ções do editor. b) Barra lateral, que contém informações sobre o projeto em que você está trabalhando e os editores abertos. c) Grupo de editores, que contém a área principal para editar seus arquivos de desenvolvimento, podendo abrir vários editores. d) Painéis, em que você exibe diferentes painéis, como informações de erros, de saída, depuração de código e avisos. Um terminal também pode ser aberto nessa área. e) Barra de status, na qual estão localizadas as informações sobre o projeto e os arquivos que serão editados. Fonte: Adaptada de Visual... (2019, documento on-line). Barra de atividades Barra lateral Barra de status Grupo de editores Painéis Para abrir no VSCode o arquivo app.js demonstrado anteriormente, basta ir à opção File -> Open File e selecionar o arquivo desejado, conforme você pode visualizar na Figura 7. Figura 7. Abrindo um arquivo JavaScript pelo editor de códigos. 9Node.js Gerenciamento dos pacotes O Node.js possui um gerenciador padrão de pacotes, conhecido como npm, que vem na sua instalação. Ele trouxe uma grande facilidade para os desenvolve- dores em organizar os pacotes, distribui-los e reutilizá-los em outros projetos. Para verificar qual versão do npm foi instalada no sistema operacional, basta digitar o comando npm –v no prompt de comandos, conforme você pode conferir na Figura 8. Figura 8. Verificando se o npm foi instalado corretamente. Para instalar um módulo no Node.js e empregá-lo em seu código, deve- -se utilizar o comando npm install <nome_módulo>, que buscará determinado pacote no repositório público do npm. Lembre-se que módulos ou pacotes são bibliotecas JavaScript. Em relação ao repositório público do npm, caso você queira pesquisar por determinado pacote, contribuir com algum desenvolvimento ou disponibilizar o próprio módulo, acesse o link a seguir. https://www.npmjs.com/ Node.js10 Para ilustrar o procedimento de instalação de um módulo no Node.js, veja um exemplo de como instalar o pacote upper-case, responsável por converter os caracteres de uma frase para a letra maiúscula. Para instalar esse pacote, é ne- cessário executar o comando npm install upper-case, conforme você pode ver na Figura 9. Figura 9. Instalação do pacote upper-case. Após a instalação, uma pasta node_modules será criada, contendo o pacote que foi instalado. Um pacote Node.js pode ser instalado de duas formas: localmente ou globalmente. Para fazer uma instalação local, basta utilizar o comando npm install <nome_ modulo>. Assim, o pacote será instalado dentro da pasta node_modules, que é criada no diretório de seu projeto. Caso você opte por uma instalação global, use o comando npm install –g <nome_modulo>, no qual -g será responsável por instalar o pacote em um diretório node_modules global na máquina de desenvolvimento. Para fazer a atualização local de um módulo, utilize o comando npm update <nome_modulo>. Já para uma atualização global, basta usar o comando npm update–g <nome_modulo>. Por fim, para remover um módulo, use o comando npm uninstall <nome_modulo>. 11Node.js Ao instalar um módulo pelo comando npm, cria-se a pasta node_modules e um arquivo chamado package.json, o qual contém informações sobre o projeto e suas dependências. Para saber mais sobre esse arquivo, acesse o link a seguir. https://qrgo.page.link/sGFHa Para incluir algum módulo no código, deve-se utilizar o comando re- quire, sendo assim, o pacote upper-case é incluído no arquivo app.js. Nesse exemplo, o módulo upper-case se encontra na pasta node_modules do projeto. Ao executar o código, a mensagem precisa ser exibida com letras maiúsculas, como você pode ver na Figura 10. Figura 10. Utilização do módulo upper-case. Framework Ionic O Node.js é a base de várias tecnologias, entre elas, o framework Ionic, um kit de ferramentas open source utilizado no desenvolvimento das interfaces de usuário em aplicações móveis e desktop. Ele é muito usado por empresas e desenvolvedores para criar aplicações híbridas, que podem ser empregadas e portadas para plataformas diferentes, como Android e iPhone Operating System (iOS), sem a necessidade de escrever um código diferente para cada uma. Node.js12 O Ionic usa tecnologias da Web bem difundidas, como Hypertext Markup Language (HTML), Cascading Style Sheets (CSS) e JavaScript, tem as van- tagens de ser um framework de alto desempenho e alta qualidade, além de possuir uma curva de aprendizagem baixa. Como a experiência do usuário em qualquer aplicação é fundamental, o Ionic oferece diversos suportes para que isso seja possível, integrando-se facilmente às outras bibliotecas ou estruturas, como o suporte ao Angular e as tecnologias Vue e React, nas quais o suporte está em desenvolvimento. Para você iniciar o desenvolvimento com o Ionic, são necessários alguns requisitos. � Instalação do Node.js: ele é a base da tecnologia Ionic, por isso, deve ser instalado na máquina de desenvolvimento, verificando-se também se o npm está instalado. � Instalação dos módulos Ionic e Cordova: eles devem ser instalados pelo npm e são pacotes fundamentais para o funcionamento do Ionic. Já os comandos a seguir realizam a instalação global dos módulos pelo npm: � npm install -g ionic � npm install -g cordova Para verificar se o Ionic e o Cordova foram instalados corretamente, basta utilizar os comandos ionic –v e cordova –v, respectivamente. Na Figura 11, você pode conferir a execução desses comandos. Figura 11. Instalando as dependências do framework Ionic. Para iniciar o desenvolvimento do primeiro aplicativo, há alguns templates iniciais disponibilizados pelo site oficial do framework. Veja alguns exemplos na Figura 12. 13Node.js Figura 12. Templates iniciais para o desenvolvimento do primeiro aplicativo. Fonte: Adaptada de Free Mobile... (2019, documento on-line): Por meio do comando ionic start, cria-se um projeto com o tem- plate inicial e inicia-se o desenvolvimento. Os seguintes templates podem ser utilizados: � tabs. � blank. � sidemenu. Na Figura 13, você pode visualizar como baixar um projeto base com o tem- plate sidemenu, executando o comando ionic start myApp sidemenu, em que myApp é o nome da pasta do projeto que será criada. Figura 13. Iniciando um projeto Ionic com o template sidemenu. Neste momento, serão baixados os pacotes essenciais para o projeto exem- plo, sendo necessário aguardar alguns instantes. Após a conclusão do último comando, a pasta myApp é checada a fim de verificar se ela contém os arquivos desse projeto. No Windows, você pode realizar a verificação por meio do comando dir, conforme apresentado na Figura 14. Node.js14 Figura 14. Listando os arquivos e diretórios do projeto criado. Para executar o aplicativo, deve-se iniciar um serviço e, para isso, utiliza- -se o comando ionic serve, como ilustrado na Figura 15. Certifique-se que esse comando seja executado dentro da pasta em que o projeto foi criado, nesse caso, myApp. Automaticamente, o navegador será aberto no endereço localhost e porta 8100, conforme você pode conferir na Figura 16. Figura 15. Inicializando o serviço que rodará o aplicativo. 15Node.js Figura 16. Aplicativo sendo exibido pelo navegador Chrome. Para visualizar os arquivos do aplicativo, é possível utilizar o editor de códigos VSCode. Ao entrar nesse editor, basta abrir a pasta myApp, conforme você pode ver na Figura 17. Node.js16 Figura 17. Visualizando os arquivos do projeto. Prática com Node.js Como já foi observado, ao utilizar o Node.js e a linguagem JavaScript, é possível que o desenvolvedor crie aplicações que rodem ao lado do servidor, como aplicações back-end e Desktop, API, utilitários, etc.. Agora, você verá um exemplo prático da utilização da plataforma Node.js, partindo de um código que ilustra como ela pode ser usada para hospedar uma página Web HTML estática. Ele foi desenvolvido com o editor de código VSCode, conforme você pode conferir na Figura 18. 17Node.js Figura 18. Criando um servidor com o Node.js. O código completo, adaptado de https://nodejs.org/en/about, pode ser visto a seguir: const http = require('http'); const hostname = '127.0.0.1'; const port = 2000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Ola aluno.\nBem vindo ao capitulo de Node.js!'); }); server.listen(port, hostname, () => { console.log(̀ Servidor rodando em: http://${hostname}:${port}/̀ ); }); Explicação do código de exemplo O trecho de código responsável por incluir o módulo Hypertext Transfer Pro- tocol (HTTP) do Node.js será demonstrado a seguir, sendo que essa plataforma possui várias bibliotecas para trabalhar com os protocolos de rede que já vêm por padrão em sua instalação. const http = require('http'); Node.js18 O trecho a seguir ilustra os parâmetros configurados para o servidor escutar as requisições de rede, sendo especificados o nome do host e o número da porta do servidor. const hostname = '127.0.0.1'; const port = 2000; Veja o método createServer() a seguir, o qual faz parte da biblioteca HTTP, responsável por criar outro servidor HTTP. O trecho res.sta- tusCode = 200; indica uma resposta bem-sucedida; o trecho res. setHeader('Content-Type', 'text/plain'); determina o cabe- çalho Content-Type; já o trecho res.end('Ola aluno.\nBem vindo ao capitulo de Node.js!'); define a resposta da requisição ao servidor. const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Ola aluno.\nBem vindo ao capitulo de Node.js!'); }); Depois, quando o servidor estiver pronto, uma função de callback será chamada informando que ele está em execução. server.listen(port, hostname, () => { console.log(`Servidor rodando em: http://${hostname}:${port}/`); }); Na Figura 19, você pode observar a execução do código e a mensagem exibida pela callback informando que o servidor está rodando. Já na Fi- gura 20, há a mensagem de retorno do servidor após a requisição ao endereço http://127.0.0.1:2000/ pelo navegador. Figura 19. Servidor em execução. 19Node.js Figura 20. Retorno do servidor após a requisição. Neste pequeno exemplo, você aprendeu como utilizar o Node.js para criação de uma aplicação servidora, com a linguagem JavaScript. FREE MOBILE App Development: Getting Started with Ionic Apps. Ionic, Madison, 2019. Disponível em: https://ionicframework.com/getting-started#cli. Acesso em: 30 jun. 2019. KIRAN, R. Node.js Tutorial Series - Getting Started. DotNetCurry, Pune, 17 June 2015. Disponível em: https://www.dotnetcurry.com/nodejs/1143/nodejs-tutorial-series- -beginner-experienced-developer. Acesso em: 30 jun. 2019. PEREIRA, C. R. Aplicações web real-time com Node.js. São Paulo: Casa do Código, 2013. 185 p. VISUAL Studio Code User Interface. Microsoft, Seattle, 2019. Disponível em: https://code. visualstudio.com/docs/getstarted/userinterface.Acesso em: 30 jun. 2019. Leituras recomendadas CAMARGO, L. Node.js — O que é, como funciona e quais as vantagens. Opus Software, São Paulo; Toronto; Sorocaba, 5 set. 2018. Disponível em: https://www.opus-software. com.br/node-js/. Acesso em: 30 jun. 2019. DESIGN Overview — libuv documentation. The libuv team, [S. l.], 2019. Disponível em: http://docs.libuv.org/en/v1.x/design.html. Acesso em: 30 jun. 2019. INTRODUCTION to Node.js. Github, [S. l.], 2019. Disponível em: https://nodejs.dev/. Acesso em: 30 jun. 2019. Node.js20 IONIC - Cross Platform Mobile App Development. Ionic, Madison, 2019. Disponível em: https://ionicframework.com. Acesso em: 30 jun. 2019. MORAES, W. B. Construindo aplicações com NodeJS. 2. ed. São Paulo: Novatec, 2018. 216 p. NODE.js: a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js Foun- dation, [S. l.], 2019. Disponível em: https://nodejs.org. Acesso em: 30 jun. 2019. O QUE É o NodeJS e quais suas vantagens e desvantagens? ValueHost, São Paulo, 11 dez. 2018. Disponível em: https://www.valuehost.com.br/blog/o-que-e-o-nodejs/. Acesso em: 30 jun. 2019. RUBENS, J. Primeiros passos com Node.js. São Paulo: Casa do Código, 2017. 195 p. V8 JavaScript Engine: Google’s open source high-performance JavaScript and We- bAssembly engine, written in C++. GitHub, [S. l.], 2019. Disponível em: https://v8.dev/. Acesso em: 30 jun. 2019. VISUAL Studio Code. Microsoft, Seattle, 2019. Disponível em: https://code.visualstudio. com/. Acesso em: 30 jun. 2019. 21Node.js Dica do professor Com o Node.js você pode criar diversas aplicações. Aplicações servidoras, APIs, programas utilitários, desktop, aplicações de tempo real, chatbots e softwares para inteligência artificial. Nesta Dica do Professor, você vai ver um exemplo de uma aplicação servidora utilizando o Node.js no editor de códigos Visual Studio Code. Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar. https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/2ea6fca3a174386159a3d40b46764c58 Saiba + Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor: Comparação de desempenho e avaliação das tecnologias de desenvolvimento Webem PHP, Python e Node.js Leia o seguinte artigo, o qual tem grande escala, alta simultaneidade e grande quantidade de dados. São tendências importantes para a nova geração de websites. O Node.js se torna popular e bem- sucedido para criar dados intensivos. Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar. Benchmark entre diferentes linguagens Server-side implementando o TUS: protocolo aberto para upload de arquivos recuperáveis O seguinte artigo apresenta um comparativo entre as tecnologias Node.js, Java e Go, apresentando as diferenças, os pontos fortes e fracos e a usabilidade. Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar. Benchmarks do Framework Web A empresa TechEmpower faz pesquisa com diversas tecnologias web medindo o desempenho delas em benchmarks de diversos tipos. Confira. https://www.researchgate.net/publication/286594024_Performance_Comparison_and_Evaluation_of_Web_Development_Technologies_in_PHP_Python_and_Nodejs?v=661640572 https://seer.cesjf.br/index.php/cesi/article/view/1168/918 Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar. Aplicação de armazenamento em nuvem utilizando a plataforma Node.js O seguinte artigo apresenta uma aplicação para facilitar o acesso e a manipulação de arquivos de usuários utilizando o Node.js. Aponte a câmera para o código e acesse o link do vídeo ou clique no código para acessar. https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=json?v=94275064 http://revistas.unifenas.br/index.php/RE3C/article/view/160/105
Compartilhar