Introduction To Node.js Questions et réponses d'entretiens

Node.js est un framework qui agit comme une plate-forme côté serveur basée sur le moteur Javascript de Google. Il s'agit d'un logiciel open source et peut donc être utilisé gratuitement. Il utilise un modèle d'E / S non bloquant qui est léger et peut s'exécuter sur des services distribués. Il aide au développement d'applications côté serveur et de mise en réseau. Il possède de nombreuses bibliothèques composées de modules JavaScript qui facilitent le développement. Il est principalement utilisé dans les applications de streaming de données, les applications d'une seule page, les applications en temps réel intensives en données, etc. Jetons un coup d'œil aux questions d'entrevue Node.js 2019 qui sont posées lors des entretiens.

Vous avez donc finalement trouvé votre emploi de rêve dans Node.js, mais vous vous demandez comment résoudre l'interview 2019Node.js et quelles pourraient être les questions probables de Node.js. Chaque entretien est différent et la portée d'un travail est également différente. Gardant cela à l'esprit, nous avons conçu les questions et les réponses les plus courantes à Node.js pour vous aider à réussir votre entrevue.

Ces questions sont divisées en deux parties:

Partie 1 - Questions d'entrevue Node.js (de base)

Cette première partie couvre les questions et réponses de base de Node.js Interview

Q1) Qu'est-ce que Node.Js et expliquez ses fonctionnalités?

Répondre:
Node.js est une plate-forme d'exécution basée sur le moteur JavaScript de Google Chrome. Il s'agit d'un modèle à un seul thread qui utilise le modèle de concurrence pour ses événements à boucler. Au lieu de bloquer une application, cela aide à enregistrer un rappel vers la nouvelle application et permet à la présente application de continuer. Cela se traduit par la gestion des opérations simultanées sans créer plusieurs threads d'exécution. Il utilise JavaScript avec C ou C ++ pour interagir avec un système de fichiers. Les principales fonctionnalités de node.js sont:
1) Bibliothèque Node.js: Tous les développeurs sont pour la plupart déjà à l'aise avec JavaScript. Node.js possède une bibliothèque construite sur JavaScript. Par conséquent, les développeurs trouvent qu'il est facile d'utiliser node.js.
2) Filetage unique et hautement évolutif: il utilise un seul fil pour le bouclage d'événements. Bien que les réponses ne parviennent pas au serveur à temps, cela ne bloque aucune opération. Les serveurs normaux ont des threads limités pour gérer les requêtes et Node.js crée un thread unique pour gérer un grand nombre de requêtes.
3) Pas de tampon: ces applications n'ont pas besoin de tampon et envoient simplement une sortie de données en morceaux.
4) Traitement simultané des demandes avec des E / S asynchrones événementielles: tous les nœuds de l'API dans Node.js sont asynchrones, ce qui aide un nœud à recevoir une demande d'opération. Cela fonctionne en arrière-plan tout en prenant de nouvelles demandes. Par conséquent, il gère toutes les demandes simultanément et n'attend pas les réponses précédentes.

Q2) Qu'est-ce que REPL dans Node.js?

Répondre:
REPL signifie Reading Eval Print and Loop. En utilisant ces opérations, vous pouvez écrire des programmes pour accepter des commandes, les évaluer et les imprimer. Il prend en charge un environnement similaire à Linux ou UNIX où un développeur peut entrer des commandes et obtenir une réponse avec la sortie. REPL remplit les fonctions suivantes:
LIRE: Il lit les entrées de l'utilisateur, les analyse en JavaScript puis procède à leur stockage dans la mémoire.
EVAL: il exécute la structure de données qui a stocké les informations.
IMPRIMER: il imprime le résultat reçu lors de l'exécution de la commande.
LOOP: Il boucle la commande ci-dessus jusqu'à ce que le développeur appuie deux fois sur Ctrl + C.

Passons aux prochaines questions d'entrevue Node.js

Q3) Qu'est-ce que l'enfer de rappel?

Répondre:
L'enfer de rappel est des rappels imbriqués qui rappellent une procédure plusieurs fois et rendent donc le code illisible.
downloadPhoto ('http://coolcats.com/cat.gif', displayPhoto)
fonction displayPhoto (erreur, photo) (
if (erreur) console.error ('Erreur de téléchargement!', erreur)
else console.log ('Téléchargement terminé', photo)
)
console.log ('Le téléchargement a commencé')
Node.js ici déclare d'abord la fonction «afficher la photo», puis appelle la fonction «downloadPhoto» et passe displayPhoto comme rappel.

Q4) Qu'est-ce que le traçage?

Répondre:
Ce sont les questions d'entretien de base de Node.js qui sont posées lors d'un entretien. Le traçage vous permet de tracer les informations générées par V8. Il peut être activé en passant le drapeau comme -
trace-events-enabled lors du démarrage du nœud. Toutes ces catégories enregistrées peuvent être spécifiées par
les catégories flag –trace-event-categories. Les journaux activés peuvent être ouverts en tant que suivi chrome: // dans Chrome.

Q5) Comment éviter l'enfer de rappel?

Répondre:
Node.js utilise un seul thread et cela peut donc conduire à de nombreux événements en file d'attente. Par conséquent, chaque fois qu'une requête de longue durée termine son exécution, elle exécute le rappel associé à la requête. Pour résoudre ce problème, les étapes suivantes peuvent être suivies:
Code modulaire: ce code sera divisé en modules plus petits et pourra ensuite être joint au module principal pour obtenir le résultat souhaité.
Mécanisme de promesse: il s'agit d'un autre moyen pour un code asynchrone. Ce mécanisme garantit soit un résultat soit une erreur. Ils prennent deux arguments facultatifs et en fonction d'un état de promesse, l'un d'eux sera appelé.
Utilisation de générateurs: ce sont des routines qui attendent et reprennent en utilisant le mot-clé yield. Ils peuvent également suspendre et reprendre des opérations asynchrones.
Mécanisme asynchrone: cette méthode fournit un flux d'exécution séquentiel. Ce module possède une API qui transmet les données d'une opération à une autre à l'aide du prochain rappel. L'appelant est la méthode principale et il n'est appelé qu'une seule fois via un rappel.

Partie 2 - Questions d'entrevue Node.js (avancé)

Jetons maintenant un coup d'œil aux questions d'entrevue avancées de Node.js.

Q6) Comment charger du HTML dans Node.js?

Répondre:
Afin de charger le HTML dans Node.js, nous devons changer le «type de contenu» dans le code HTML du texte brut en texte HTML.
Voyons un exemple où un fichier statique est créé sur le serveur:
fs.readFile(filename, "binary", function(err, file) (
if(err) (
response.writeHead(500, ("Content-Type": "text/plain"));
response.write(err + "\n");
response.end();
return;
)
response.writeHead(200);
response.write(file, "binary");
response.end();
));
This code can be modified to load as HTML page instead of plain text.
fs.readFile(filename, "binary", function(err, file) (
if(err) (
response.writeHead(500, ("Content-Type": "text/html"));
response.write(err + "\n");
response.end();
return;
)
response.writeHead(200, ("Content-Type": "text/html"));
response.write(file);
response.end();
));

Q7) Expliquez EventEmitter dans Node.js?

Répondre:
C'est l'une des questions d'entrevue les plus populaires de Node.js. Le module d'événements dans Node.js peut avoir une classe EventEmitter qui est utile pour déclencher et gérer des événements personnalisés. Il est accessible par le code ci-dessous:
// Module d'import d'événements
var events = require ('events');
// Créer un objet eventEmitter
var eventEmitter = nouveaux événements.EventEmitter ();
Lorsqu'une erreur se produit, il appelle également l'événement d'erreur. Lorsqu'un nouvel écouteur est ajouté, l'événement newListener est déclenché et, de même, lorsqu'un écouteur est supprimé, removeListener est appelé.

Q8) Qu'est-ce que le NPM?

Répondre:
NPM signifie Node Package Manager. Il a deux fonctions principales:
Il fonctionne sur le référentiel en ligne pour les packages node.ls qui sont présents sur.
Il fonctionne comme un utilitaire de ligne de commande et gère la version.
Vous pouvez vérifier la version en utilisant la commande ci-dessous: npm –version.
Pour installer n'importe quel module, vous pouvez utiliser: npm install

Q9) Expliquez l'utilisation de la méthode spawn () et fork ()?

Répondre:
Cette méthode est utilisée lorsqu'un nouveau processus doit être lancé avec un ensemble de commandes donné. La commande ci-dessous peut être utilisée à cet effet:
child_process.spawn (commande (, args) (, options))
La méthode fork est considérée comme un cas particulier pour la méthode spawn (). Il peut être utilisé comme ci-dessous:
child_process.fork (modulePath (, args) (, options))

Passons aux prochaines questions d'entrevue Node.js

Q10) Expliquez la fonction de flux de contrôle et les étapes pour l'exécuter?

Répondre:
Il s'agit du code qui s'exécute entre les appels de fonction asynchrones. Pour l'exécuter, les étapes suivantes doivent être suivies:

  • Contrôlez l'ordre d'exécution.
  • Collecter des données.
  • Limitez la simultanéité.
  • Appelez la prochaine étape du programme.

Article recommandé

Ceci a été un guide pour List Of Node.js Interview Questions and Answers afin que le candidat puisse réprimer facilement ces questions d'entrevue Node.js. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Questions d'entretiens chez Amazing C ++
  2. Questions d'entretien de Tableau que vous devez savoir
  3. 6 questions d'entrevue de test de logiciel les plus étonnantes
  4. Questions d'entretiens chez Top 7 Minitab
  5. Questions d'entrevue Android - Top 10 des questions utiles
  6. Quelles sont les fonctionnalités de Node.js vs Asp.net