Κορυφαίες 25 ερωτήσεις και απαντήσεις συνέντευξης Node.js (PDF)
Node js Συνέντευξη Ερωτήσεις και Απαντήσεις για Freshers
1) Τι είναι το node.js;
Το Node.js είναι μια δέσμη ενεργειών από την πλευρά του διακομιστή που χρησιμοποιείται για τη δημιουργία επεκτάσιμων προγραμμάτων. Τα πολλαπλά πλεονεκτήματά του σε σχέση με άλλες γλώσσες από την πλευρά του διακομιστή, με το κύριο χαρακτηριστικό να είναι η μη αποκλεισμός εισόδου/εξόδου.
2) Πώς λειτουργεί το node.js;
Node.js λειτουργεί σε περιβάλλον v8, είναι μια εικονική μηχανή που χρησιμοποιεί JavaΗ δέσμη ενεργειών ως γλώσσα δέσμης ενεργειών και επιτυγχάνει υψηλή απόδοση μέσω I/O μη αποκλεισμού και βρόχου συμβάντων με ένα νήμα.
👉 Δωρεάν λήψη PDF: Ερωτήσεις & Απαντήσεις για Συνέντευξη Node.js
3) Τι εννοείτε με τον όρο I/O;
Το I/O είναι η συντομογραφία για την είσοδο και την έξοδο και θα έχει πρόσβαση σε οτιδήποτε εκτός της εφαρμογής σας. Θα φορτωθεί στη μνήμη του μηχανήματος για να τρέξει το πρόγραμμα, μόλις ξεκινήσει η εφαρμογή.
4) Τι σημαίνει προγραμματισμός που βασίζεται σε εκδηλώσεις;
Στον προγραμματισμό υπολογιστών, ο προγραμματισμός βάσει συμβάντων είναι ένα παράδειγμα προγραμματισμού στο οποίο η ροή του προγράμματος καθορίζεται από συμβάντα όπως μηνύματα από άλλα προγράμματα ή νήματα. Είναι μια τεχνική αρχιτεκτονικής εφαρμογής χωρισμένη σε δύο ενότητες 1) Επιλογή συμβάντων 2) Χειρισμός συμβάντων.
5) Πού μπορούμε να χρησιμοποιήσουμε το node.js;
Το Node.js μπορεί να χρησιμοποιηθεί για τους ακόλουθους σκοπούς.
- Εφαρμογές Ιστού (ειδικά εφαρμογές Ιστού σε πραγματικό χρόνο)
- Εφαρμογές δικτύου
- Κατανεμημένα συστήματα
- Εφαρμογές γενικού σκοπού
6) Ποιο είναι το πλεονέκτημα της χρήσης του node.js;
- Παρέχει έναν εύκολο τρόπο δημιουργίας επεκτάσιμων προγραμμάτων δικτύου
- Γενικά γρήγορα
- Μεγάλη ταυτόχρονη
- Ασύγχρονα τα πάντα
- Σχεδόν ποτέ δεν μπλοκάρει
7) Ποιοι είναι οι δύο τύποι συναρτήσεων API στο Node.js;
Οι δύο τύποι συναρτήσεων API στο Node.js είναι
- Ασύγχρονες, μη αποκλειστικές λειτουργίες
- Syncχρόνιες, ανασταλτικές λειτουργίες
8) Τι είναι η συνάρτηση ροής ελέγχου;
Ένα γενικό κομμάτι κώδικα που εκτελείται μεταξύ πολλών κλήσεων ασύγχρονων συναρτήσεων είναι γνωστό ως συνάρτηση ροής ελέγχου.
9) Εξηγήστε τα βήματα πώς η "Ροή ελέγχου" ελέγχει τις κλήσεις συναρτήσεων;
- Ελέγξτε τη σειρά εκτέλεσης
- Συλλογή δεδομένων
- Περιορίστε τη συγχρονικότητα
- Καλέστε το επόμενο βήμα στο πρόγραμμα
10) Γιατί το Node.js είναι μονό νήμα;
Για ασύγχρονη επεξεργασία, το Node.js δημιουργήθηκε ρητά ως πείραμα. Πιστεύεται ότι μπορεί να επιτευχθεί μεγαλύτερη απόδοση και επεκτασιμότητα κάνοντας ασύγχρονη επεξεργασία σε ένα νήμα κάτω από τυπικά φορτία ιστού από την τυπική υλοποίηση που βασίζεται σε νήματα.
Node js Ερωτήσεις και απαντήσεις συνέντευξης για έμπειρους επαγγελματίες
11) Ο κόμβος εκτελείται σε Windows;
Ναι είναι. Κάντε λήψη του προγράμματος εγκατάστασης MSI από https://nodejs.org/download/
12) Μπορείτε να έχετε πρόσβαση στο DOM στον κόμβο;
Όχι, δεν μπορείτε να αποκτήσετε πρόσβαση στο DOM στον κόμβο.
13) Χρησιμοποιώντας τον βρόχο συμβάντων ποιες είναι οι εργασίες που πρέπει να γίνουν ασύγχρονα;
- Λειτουργίες I/O
- Βαρύς υπολογισμός
- Οτιδήποτε απαιτεί αποκλεισμό
14) Γιατί το node.js κερδίζει γρήγορα την προσοχή από τους προγραμματιστές JAVA;
Το Node.js κερδίζει γρήγορα την προσοχή καθώς είναι ένας διακομιστής που βασίζεται σε βρόχο JavaΓραφή. Το Node.js δίνει στον χρήστη τη δυνατότητα να γράψει το JavaΣενάριο στον διακομιστή, ο οποίος έχει πρόσβαση σε πράγματα όπως στοίβα HTTP, I/O αρχείου, TCP και βάσεις δεδομένων.
15) Ποια είναι τα δύο ορίσματα που παίρνει το async.queue;
Τα δύο ορίσματα που παίρνει το async.queue
- Λειτουργία εργασίας
- Αξία συγχρονισμού
16) Τι είναι ένας βρόχος συμβάντος στο Node.js;
Για την επεξεργασία και το χειρισμό εξωτερικών συμβάντων και για τη μετατροπή τους σε επικλήσεις επανάκλησης χρησιμοποιείται ένας βρόχος συμβάντων. Έτσι, στις κλήσεις εισόδου/εξόδου, το node.js μπορεί να αλλάξει από το ένα αίτημα στο άλλο.
17) Αναφέρετε τα βήματα με τα οποία μπορείτε να κάνετε ασυγχρονισμό στο Node.js;
Ακολουθώντας τα βήματα μπορείτε να ασυγχρονίσετε το Node.js
- Λειτουργίες πρώτης κατηγορίας
- Σύνθεση συνάρτησης
- Μετρητές επανάκλησης
- Βρόχοι συμβάντων
18) Ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα του Node.js;
Πλεονεκτήματα:
- Εάν η εφαρμογή σας δεν διαθέτει υπολογισμούς έντασης CPU, μπορείτε να τον δημιουργήσετε Javascript από πάνω προς τα κάτω, ακόμη και μέχρι το επίπεδο της βάσης δεδομένων, εάν χρησιμοποιείτε το αντικείμενο αποθήκευσης JSON DB like MongoDB.
- Οι ανιχνευτές λαμβάνουν μια πλήρη απόδοση HTML απόκρισης, η οποία είναι πολύ πιο φιλική προς το SEO παρά μια εφαρμογή μεμονωμένης σελίδας ή μια εφαρμογή websockets που εκτελείται πάνω από το Node.js.
Μειονεκτήματα:
- Οποιοσδήποτε εντατικός υπολογισμός της CPU θα μπλοκάρει την απόκριση του node.js, επομένως μια πλατφόρμα με νήματα είναι μια καλύτερη προσέγγιση.
- Η χρήση σχεσιακής βάσης δεδομένων με το Node.js θεωρείται λιγότερο ευνοϊκή.
19) Πώς το Node.js ξεπερνά το πρόβλημα του αποκλεισμού των λειτουργιών I/O;
Το Node.js επιλύει αυτό το πρόβλημα βάζοντας το μοντέλο που βασίζεται σε συμβάντα στον πυρήνα του, χρησιμοποιώντας έναν βρόχο συμβάντος αντί για νήματα.
20) Ποια είναι η διαφορά μεταξύ Node.js και Ajax;
Η διαφορά μεταξύ Node.js και Ajax είναι ότι, Ajax (συντομογραφία του Asynchronous JavaΓραφή και XML) είναι μια τεχνολογία από την πλευρά του πελάτη, που χρησιμοποιείται συχνά για την ενημέρωση του περιεχομένου της σελίδας χωρίς να ανανεώνεται. Ενώ, το Node.js είναι από την πλευρά του διακομιστή Javascript, που χρησιμοποιείται για την ανάπτυξη λογισμικού διακομιστή. Το Node.js δεν εκτελείται στο πρόγραμμα περιήγησης αλλά από τον διακομιστή.
Node js Ερωτήσεις συνέντευξης για 5+ χρόνια εμπειρίας
21) Ποιες είναι οι προκλήσεις με το Node.js;
Δίνοντας έμφαση στην τεχνική πλευρά, είναι λίγη πρόκληση στο Node.js να υπάρχει μία διεργασία με ένα νήμα για να κλιμακωθεί σε διακομιστή πολλαπλών πυρήνων.
22) Τι σημαίνει «μη αποκλεισμός» στο node.js;
Στο node.js, το "non-blocking" σημαίνει ότι το IO του δεν αποκλείεται. Το Node χρησιμοποιεί το "libuv" για να χειριστεί το IO του με αγνωστικιστικό τρόπο πλατφόρμας. Στα παράθυρα, χρησιμοποιεί θύρες ολοκλήρωσης για unix, χρησιμοποιεί epoll ή kqueue κ.λπ. Έτσι, κάνει ένα αίτημα μη αποκλεισμού και κατόπιν αιτήματος, το βάζει στην ουρά μέσα στον βρόχο συμβάντων που καλεί το JavaΣενάριο 'callback' στο main JavaΝήμα σεναρίου.
23) Ποια είναι η εντολή που χρησιμοποιείται στο node.js για την εισαγωγή εξωτερικών βιβλιοθηκών;
Η εντολή "require" χρησιμοποιείται για την εισαγωγή εξωτερικών βιβλιοθηκών, για παράδειγμα, "var http=require ("http")". Αυτό θα φορτώσει τη βιβλιοθήκη http και το μεμονωμένο αντικείμενο εξαγωγής μέσω της μεταβλητής http.
24) Αναφέρετε το πλαίσιο που χρησιμοποιείται πιο συχνά στο node.js;
Το "Express" είναι το πιο κοινό πλαίσιο που χρησιμοποιείται στο node.js.
25) Τι είναι το 'Callback' στο node.js;
Η λειτουργία επανάκλησης χρησιμοποιείται στο node.js για την αντιμετώπιση πολλαπλών αιτημάτων που γίνονται στον διακομιστή. Όπως εάν έχετε ένα μεγάλο αρχείο που θα χρειαστεί πολύς χρόνος για να διαβάσει ένας διακομιστής και εάν δεν θέλετε ένας διακομιστής να ασχοληθεί με την ανάγνωση αυτού του μεγάλου αρχείου ενώ αντιμετωπίζει άλλα αιτήματα, χρησιμοποιείται η λειτουργία επανάκλησης. Η λειτουργία επιστροφής κλήσης επιτρέπει στον διακομιστή να αντιμετωπίσει πρώτα το αίτημα σε εκκρεμότητα και να καλέσει μια συνάρτηση όταν ολοκληρωθεί.
Αυτές οι ερωτήσεις συνέντευξης θα βοηθήσουν επίσης στο viva (προφορικά) σας