0% acharam este documento útil (0 voto)
6 visualizações4 páginas

Cópia de NodeJS-api

O documento contém uma atividade de Node.js com 10 perguntas teóricas sobre conceitos fundamentais como event loop, callbacks, I/O assíncrono, streams e Promises. As respostas explicam como o Node.js opera de forma assíncrona e não bloqueante, destacando suas vantagens e desvantagens em comparação com outras tecnologias. O objetivo é avaliar o conhecimento do aluno, Nycollas Rodrigues Dos Santos, sobre o desenvolvimento backend utilizando Node.js.

Enviado por

nycollasdark9980
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
6 visualizações4 páginas

Cópia de NodeJS-api

O documento contém uma atividade de Node.js com 10 perguntas teóricas sobre conceitos fundamentais como event loop, callbacks, I/O assíncrono, streams e Promises. As respostas explicam como o Node.js opera de forma assíncrona e não bloqueante, destacando suas vantagens e desvantagens em comparação com outras tecnologias. O objetivo é avaliar o conhecimento do aluno, Nycollas Rodrigues Dos Santos, sobre o desenvolvimento backend utilizando Node.js.

Enviado por

nycollasdark9980
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 4

Atividade de NodeJS

Nome completo: Nycollas Rodrigues Dos Santos

Turno: Manhã
Data da prova: 28 de Fevereiro de 2025
Local CFCCT

Perguntas:

Aqui estão 10 perguntas abertas e teóricas sobre [Link] para uma prova:

1.​ O que é o [Link] e como ele se diferencia de outras plataformas


de desenvolvimento backend?

Resp.) ​

2.​ Explique o conceito de "event loop" no [Link] e como ele


influencia a execução de código assíncrono.​

3.​ O que são "callbacks" em [Link] e como elas são utilizadas no


processamento assíncrono? Dê exemplos de seu uso.​

4.​ Descreva a diferença entre o modelo de I/O síncrono e assíncrono


no [Link]. Quais são as vantagens do modelo assíncrono?​
5.​ Como o [Link] lida com operações de I/O pesadas, como leitura
de arquivos ou requisições HTTP, sem bloquear o processo
principal?​

6.​ Explique a diferença entre o "require" e o "import" no [Link].


Quais são as implicações de cada um para a modularização do
código?​

7.​ O que são streams em [Link]? Como elas podem ser usadas para
otimizar o processamento de grandes volumes de dados?​

8.​ Explique o conceito de "event emitters" no [Link] e como eles são


utilizados para criar eventos customizados. Dê um exemplo de
implementação.​

9.​ Quais são as principais vantagens e desvantagens do uso do


[Link] em comparação com outras tecnologias, como Java ou
Python, para o desenvolvimento de aplicações web escaláveis?​

10.​ O que são Promises em [Link] e como elas ajudam a lidar com o
código assíncrono de maneira mais eficiente do que os callbacks?

—--------------------------------------------------------------------------​

1.​ [Link] é um runtime JavaScript assíncrono, rápido e escalável, com


I/O não bloqueante.
2.​ O event loop no [Link] gerencia tarefas assíncronas, executando
callbacks em fases para evitar bloqueios e melhorar a performance.
3.​ Callbacks em [Link] são funções executadas após operações
assíncronas, permitindo que o código continue enquanto aguarda a
conclusão de tarefas, como a leitura de arquivos. Um exemplo seria
uma função que lê um arquivo e, após a leitura, chama uma
callback para processar o conteúdo, sem bloquear a execução de
outras tarefas enquanto espera a operação ser concluída.
4.​ No I/O síncrono, as operações bloqueiam o código até terminarem.
No assíncrono, as operações são executadas em segundo plano,
permitindo que o código continue. O modelo assíncrono oferece
melhor performance e escalabilidade.
5.​ O [Link] usa I/O assíncrono e não bloqueante, permitindo que o
processo principal continue enquanto espera a conclusão de
tarefas pesadas, como leitura de arquivos ou requisições HTTP.
6.​ require é usado para módulos CommonJS, síncrono e tradicional
no [Link]. Já import é para ES Modules, assíncrono e moderno,
permitindo melhor otimização, mas requer configuração adicional
no [Link].
7.​ Streams em [Link] permitem processar dados de forma contínua,
sem carregar tudo na memória de uma vez. Elas otimizam o
processamento de grandes volumes de dados, lendo ou gravando
em partes menores.
8.​ No [Link], "Event Emitters" permitem criar e ouvir eventos
personalizados, facilitando a comunicação entre diferentes partes
do código. Por exemplo, você pode criar um evento chamado
"conexao" e, quando ele for disparado, uma função pode ser
executada para tratar a conexão, sem que o código precise
bloquear outras operações.
9.​ [Link] oferece alta performance e escalabilidade para I/O
assíncrono, usando JavaScript no backend e frontend. Porém, não é
ideal para operações CPU-intensivas e pode ter código mais
complexo com callbacks. Comparado a Java, é mais leve, mas Java é
melhor para multi-threading, enquanto Python é mais indicado
para protótipos e análise de dados.
10.​Promises em [Link] representam a conclusão de uma operação
assíncrona, tornando o código mais legível e evitando o "callback
hell". Elas permitem encadear operações com .then() e tratar
erros com .catch().

Você também pode gostar