Κόμβος.JS (Node.JS)

Το Node.js είναι ένας χρόνος εκτέλεσης JavaScript ανοιχτού κώδικα, μεταξύ πλατφορμών και εκτελείται σε διακομιστές. Από την κυκλοφορία του το 2009, αυτή η πλατφόρμα έχει γίνει εξαιρετικά δημοφιλής και διαδραματίζει πολύ σημαντικό ρόλο στον τομέα της ανάπτυξης ιστού αυτές τις μέρες.
Για το πλήρες άρθρο στο Node.JS ...

Εμφάνιση φίλτρου
Φίλτρα φιλοξενίας
A2 Themes & Host Me Filter

Λειτουργικό σύστημα

Χώρος στο δισκο

Μνήμη RAM

Τύπος δίσκου

Πυρήνες CPU

Είδος

Trust Pilot Dream Host
Βαθμολογία - 9.7
Dream Host Logo
Dream Host

Host Dream

DreamObjects 40 GB
$0.95 /Μηνιαίο

Κριτικές 3778

29 Κουπόνια

Τοποθεσίες διακομιστή


Dream Host Servers in AshburnΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot ICDSoft
Βαθμολογία - 10
ICDSoft Logo
ICDSoft

ICDSoft

Economy - Europe
$8 /Μηνιαίο

Κριτικές 233


Τοποθεσίες διακομιστή


ICDSoft Servers in SofiaΒουλγαρία ICDSoft Servers in BostonΗνωμένες Πολιτείες ICDSoft Servers in Hong KongΧονγκ Κονγκ
Συγκρίνω
Trust Pilot ICDSoft
Βαθμολογία - 10
ICDSoft Logo
ICDSoft

ICDSoft

Economy - USA
$8 /Μηνιαίο

Κριτικές 233


Τοποθεσίες διακομιστή


ICDSoft Servers in SofiaΒουλγαρία ICDSoft Servers in BostonΗνωμένες Πολιτείες ICDSoft Servers in Hong KongΧονγκ Κονγκ
Συγκρίνω
Βαθμολογία - 9
A2hosting Logo
A2hosting

Α2 φιλοξενία

Lite
$3.92 /Μηνιαίο

50 Κουπόνια

Τοποθεσίες διακομιστή


A2hosting Servers in AmsterdamΟλλανδία A2hosting Servers in MichiganΗνωμένες Πολιτείες A2hosting Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Trust Pilot Keliweb
Βαθμολογία - 9.8
Keliweb Logo
Keliweb

Keliweb

Prime
$5.51 /Μηνιαίο

Κριτικές 453


Τοποθεσίες διακομιστή


Keliweb Servers in MilanoΙταλία
Συγκρίνω
Trust Pilot JustHostMe
Βαθμολογία - 9.4
JustHostMe Logo
JustHostMe

JustHostMe

Starter
$3.11 /Μηνιαίο

Κριτικές 72


Τοποθεσίες διακομιστή


JustHostMe Servers in United KingdomΗνωμένο Βασίλειο
Συγκρίνω
Trust Pilot Dream VPS
Βαθμολογία - 8.6
Dream VPS Logo
Dream VPS

Dream VPS

STARTER
$3.75 /Μηνιαίο

Κριτικές 7


Τοποθεσίες διακομιστή


Dream VPS Servers in Hong KongΧονγκ Κονγκ Dream VPS Servers in Santa Clara Dream VPS Servers in New YorkΗνωμένες Πολιτείες Dream VPS Servers in LondonΗνωμένο Βασίλειο Dream VPS Servers in AmsterdamΟλλανδία Dream VPS Servers in FrankfurtΓερμανία Dream VPS Servers in IsraelΙσραήλ
Συγκρίνω
Trust Pilot Reseller Cube
Βαθμολογία - 8
Reseller Cube Logo
Reseller Cube

Μεταπωλητής Cube

Basic USA
$5 /Μηνιαίο

Κριτικές 4


Τοποθεσίες διακομιστή


Reseller Cube Servers in RaleighΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot Univa Host
Βαθμολογία - 8
Univa Host Logo
Univa Host

Κεντρικός υπολογιστής Univa

E-ECONOMY
$2.99 /Μηνιαίο

Κριτικές 3


Τοποθεσίες διακομιστή


Univa Host Servers in GermanyΓερμανία Univa Host Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot OperaVPS
Βαθμολογία - 7.8
OperaVPS Logo
OperaVPS

OperaVPS

Linux 512MB
$7.99 /Μηνιαίο

Κριτικές 3


Τοποθεσίες διακομιστή


OperaVPS Servers in United KingdomΗνωμένο Βασίλειο OperaVPS Servers in AustriaΑυστρία OperaVPS Servers in CanadaΚαναδάς OperaVPS Servers in DenmarkΔανία OperaVPS Servers in FranceΓαλλία OperaVPS Servers in GermanyΓερμανία OperaVPS Servers in ItalyΙταλία OperaVPS Servers in NetherlandsΟλλανδία OperaVPS Servers in RomaniaΡουμανία OperaVPS Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot L3Web Hosting
Βαθμολογία - 7.6
L3Web Hosting Logo
L3Web Hosting

Φιλοξενία L3Web

START UP
$1.99 /Μηνιαίο

Κριτικές 2


Τοποθεσίες διακομιστή


L3Web Hosting Servers in IndiaΙνδία L3Web Hosting Servers in MunichΓερμανία L3Web Hosting Servers in MiamiΗνωμένες Πολιτείες L3Web Hosting Servers in SingaporeΣιγκαπούρη L3Web Hosting Servers in United KingdomΗνωμένο Βασίλειο
Συγκρίνω
Trust Pilot Idea Stack
Βαθμολογία - 7.4
Idea Stack Logo
Idea Stack

Στοίβα ιδέας

LEVEL 1
$2 /Μηνιαίο

Κριτικές 2


Τοποθεσίες διακομιστή


Idea Stack Servers in SeattleΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot Epic Host
Βαθμολογία - 7.4
Epic Host Logo
Epic Host

Επικός οικοδεσπότης

Cloud hosting
$2.37 /Μηνιαίο

Κριτικές 1


Τοποθεσίες διακομιστή


Epic Host Servers in New DelhiΙνδία Epic Host Servers in UnionΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot itanets.co.uk
Βαθμολογία - 7
itanets.co.uk Logo
itanets.co.uk

itanets.co.uk

JSP HOSTING 1
$5.19 /Μηνιαίο

Κριτικές 2

Συγκρίνω
Trust Pilot Digital Ocean
Βαθμολογία - 3.8
Digital Ocean Logo
Digital Ocean

Ψηφιακός Ωκεανός

$5 /mo
$5 /Μηνιαίο

Κριτικές 214

38 Κουπόνια

Τοποθεσίες διακομιστή


Digital Ocean Servers in IndiaΙνδία Digital Ocean Servers in New YorkΗνωμένες Πολιτείες Digital Ocean Servers in AmsterdamΟλλανδία Digital Ocean Servers in LondonΗνωμένο Βασίλειο Digital Ocean Servers in TorontoΚαναδάς Digital Ocean Servers in Frankfurt am MainΓερμανία Digital Ocean Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Βαθμολογία - 10
HOST PRO KE Logo
HOST PRO KE

HOST PRO KE

Host Pro Starter
$9.38 /Ετήσια


Τοποθεσίες διακομιστή


HOST PRO KE Servers in GermanyΓερμανία
Συγκρίνω
Βαθμολογία - 9.4
Accu WebHosting Logo
Accu WebHosting

Accu WebHosting

Windows Personal Web Hosting
$2.99 /Μηνιαίο

19 Κουπόνια

Τοποθεσίες διακομιστή


Accu WebHosting Servers in FranceΓαλλία Accu WebHosting Servers in DenverΗνωμένες Πολιτείες Accu WebHosting Servers in MumbaiΙνδία Accu WebHosting Servers in AmsterdamΟλλανδία Accu WebHosting Servers in Frankfurt am MainΓερμανία Accu WebHosting Servers in SydneyΑυστραλία Accu WebHosting Servers in LondonΗνωμένο Βασίλειο Accu WebHosting Servers in PolandΠολωνία Accu WebHosting Servers in CanadaΚαναδάς Accu WebHosting Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Βαθμολογία - 9
Be hostings Logo
Be hostings

Γίνετε φιλόξενοι

StarterSSL
$3.36 /Μηνιαίο


Τοποθεσίες διακομιστή


Be hostings Servers in BrusselsΒέλγιο
Συγκρίνω
Βαθμολογία - 4.3
Gear Host Logo
Gear Host

Υπολογιστής εργαλείων

CloudSite Hobby
$5 /Μηνιαίο


Τοποθεσίες διακομιστή


Gear Host Servers in DenverΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 1
Mikro VPS Logo
Mikro VPS

Μικρό VPS

VPS SSD 1
$4.39 /Μηνιαίο


Τοποθεσίες διακομιστή


Mikro VPS Servers in BudapestΟυγγαρία
Συγκρίνω
Βαθμολογία - 0
Simple Node Logo
Simple Node

Απλός κόμβος

OpenVZ - 256MB
$3 /Μηνιαίο

Συγκρίνω

 

Node.js

 

 

Το Node.js είναι ένας χρόνος εκτέλεσης JavaScript ανοιχτού κώδικα, μεταξύ πλατφορμών και εκτελείται σε διακομιστές. Από την κυκλοφορία του το 2009, αυτή η πλατφόρμα έχει γίνει εξαιρετικά δημοφιλής και διαδραματίζει πολύ σημαντικό ρόλο στον τομέα της ανάπτυξης ιστού αυτές τις μέρες. Εάν θεωρήσουμε τον αριθμό των αστεριών που έχει συλλέξει ένα έργο στο GitHub ως δείκτη δημοτικότητας, τότε το Node.js, το οποίο έχει περισσότερα από 50.000 αστέρια, είναι ένα πολύ, πολύ δημοφιλές έργο.

 

Η πλατφόρμα Node.js είναι χτισμένη στη μηχανή V8 JavaScript της Google, η οποία χρησιμοποιείται στο πρόγραμμα περιήγησης Google Chrome. Αυτή η πλατφόρμα χρησιμοποιείται κυρίως για τη δημιουργία διακομιστών ιστού, αλλά το πεδίο εφαρμογής της δεν περιορίζεται σε αυτό.

 

Ας δούμε τα κύρια χαρακτηριστικά του Node.js.

 

Ταχύτητα

 

Ένα από τα κύρια αξιοθέατα του Node.js είναι η ταχύτητα. Ο κώδικας JavaScript που εκτελείται στο Node.js μπορεί να είναι διπλάσιος από τον κώδικα που γράφεται σε μεταγλωττισμένες γλώσσες όπως C ή Java και παραγγελίες μεγέθους γρηγορότερες από τις ερμηνευμένες γλώσσες όπως Python ή Ruby. Ο λόγος για αυτό είναι η μη αποκλεισμένη αρχιτεκτονική της πλατφόρμας και τα συγκεκριμένα αποτελέσματα εξαρτώνται από τα κριτήρια αξιολόγησης που χρησιμοποιούνται, αλλά συνολικά, το Node.js είναι μια πολύ γρήγορη πλατφόρμα.

 

Απλότητα

 

Η πλατφόρμα Node.js είναι εύκολη στην εκμάθηση και τη χρήση. Στην πραγματικότητα, είναι εντελώς πολύ απλό, ειδικά σε σύγκριση με κάποιες άλλες πλατφόρμες διακομιστών.

 

JavaScript

 

Το JavaScript εκτελείται στο περιβάλλον Node.js. Αυτό σημαίνει ότι εκατομμύρια προγραμματιστές front-end που χρησιμοποιούν ήδη JavaScript στο πρόγραμμα περιήγησης μπορούν να γράψουν κώδικα διακομιστή και πελάτη στην ίδια γλώσσα προγραμματισμού χωρίς να χρειάζεται να μάθουν ένα εντελώς νέο εργαλείο για να μεταβούν στην ανάπτυξη διακομιστή.

 

Το πρόγραμμα περιήγησης και ο διακομιστής χρησιμοποιούν τις ίδιες έννοιες γλώσσας. Επιπλέον, το Node.js μπορεί γρήγορα να μεταβεί σε νέα πρότυπα ECMAScript καθώς εφαρμόζονται στην πλατφόρμα.

 

Δεν χρειάζεται να περιμένετε οι χρήστες να ανανεώσουν τα προγράμματα περιήγησής τους για αυτό, καθώς το Node.js είναι ένα περιβάλλον διακομιστή που ελέγχει πλήρως τον προγραμματιστή. Ως αποτέλεσμα, νέες δυνατότητες γλώσσας καθίστανται διαθέσιμες κατά την εγκατάσταση μιας υποστηρικτικής έκδοσης του Node.js.

 

Κινητήρας V8

 

Στην καρδιά του Node.js, μεταξύ άλλων λύσεων, βρίσκεται η μηχανή ανοιχτού κώδικα V8 της Google, η οποία χρησιμοποιείται στο Google Chrome και σε άλλα προγράμματα περιήγησης. Αυτό σημαίνει ότι το Node.js εκμεταλλεύεται χιλιάδες μηχανικούς που έκαναν το JavaScript του χρόνου εκτέλεσης του Chrome απίστευτα γρήγορο και συνεχίζουν να εργάζονται για τη βελτίωση του V8.

 

Ασύγχρονη

 

Στις παραδοσιακές γλώσσες προγραμματισμού (C, Java, Python, PHP), όλες οι οδηγίες αποκλείονται από προεπιλογή, εκτός εάν ο προγραμματιστής φροντίζει ρητά την εκτέλεση του κώδικα ασύγχρονα. Ως αποτέλεσμα, εάν, για παράδειγμα, σε ένα τέτοιο περιβάλλον, κάνετε ένα αίτημα δικτύου για λήψη κάποιου κώδικα JSON, η εκτέλεση της ροής από την οποία υποβάλλεται το αίτημα θα ανασταλεί έως ότου ληφθεί και υποβληθεί σε επεξεργασία η απάντηση.

 

Το JavaScript καθιστά πολύ πιο εύκολο να γράψετε ασύγχρονο και χωρίς αποκλεισμό κώδικα χρησιμοποιώντας ένα νήμα, επιστροφές κλήσεων και μια προσέγγιση που βασίζεται σε συμβάντα στην ανάπτυξη. Κάθε φορά που πρέπει να εκτελέσουμε μια βαριά λειτουργία, περνάμε μια επιστροφή κλήσης στον κατάλληλο μηχανισμό, ο οποίος θα καλείται αμέσως μετά την ολοκλήρωση αυτής της λειτουργίας. Ως αποτέλεσμα, δεν χρειάζεται να περιμένετε τα αποτελέσματα τέτοιων λειτουργιών για να συνεχίσει να λειτουργεί το πρόγραμμα.

 

Ένας παρόμοιος μηχανισμός προήλθε από προγράμματα περιήγησης. Δεν μπορούμε να περιμένουμε, ας πούμε, για έναΑΪΑΣαίτημα για ολοκλήρωση χωρίς να μπορείτε να απαντήσετε σε ενέργειες χρήστη, όπως κλικ σε κουμπιά. Για να είναι βολικό για τους χρήστες να εργάζονται με ιστοσελίδες, τα πάντα, τόσο η λήψη δεδομένων από το δίκτυο όσο και τα κλικ στα κουμπιά επεξεργασίας, πρέπει να πραγματοποιούνται ταυτόχρονα, σε πραγματικό χρόνο.

 

Εάν έχετε δημιουργήσει ποτέ ένα πρόγραμμα χειρισμού συμβάντων με κλικ, έχετε ήδη χρησιμοποιήσει ασύγχρονες τεχνικές προγραμματισμού.

 

Οι ασύγχρονοι μηχανισμοί επιτρέπουν σε έναν μόνο διακομιστή Node.js να χειρίζεται ταυτόχρονα χιλιάδες συνδέσεις χωρίς να επιβαρύνει τον προγραμματιστή με εργασίες νήματος και παράλληλες εργασίες εκτέλεσης κώδικα. Τέτοια πράγματα είναι συχνά πηγές σφάλματος.

 

Το Node.js παρέχει στον προγραμματιστή μη αποκλεισμούς βασικούς μηχανισμούς εισόδου / εξόδου και, γενικά, οι βιβλιοθήκες που χρησιμοποιούνται στο πλαίσιο Node.js γράφονται χρησιμοποιώντας παραδείγματα μη αποκλεισμού.Αυτό καθιστά τη συμπεριφορά αποκλεισμού εξαίρεση παρά τον κανόνα

 

Όταν το Node.js πρέπει να εκτελέσει μια λειτουργία εισόδου / εξόδου, όπως φόρτωση δεδομένων από το δίκτυο, πρόσβαση σε μια βάση δεδομένων ή στο σύστημα αρχείων, αντί να εμποδίζει το κύριο νήμα που περιμένει τα αποτελέσματα μιας τέτοιας λειτουργίας, το Node.js θα ξεκινήσει το εκτέλεση και συνεχίστε να κάνετε άλλα πράγματα έως ότου ληφθούν τα αποτελέσματα αυτής της λειτουργίας.

 

Βιβλιοθήκες

 

Με την ευκολία και την ευκολία της συνεργασίας με έναν διαχειριστή πακέτων για το Node.js που ονομάζεται npm, το οικοσύστημα Node.js ευδοκιμεί. Υπάρχουν πλέον πάνω από μισό εκατομμύριο πακέτα ανοιχτού κώδικα στο μητρώο npm που μπορεί να χρησιμοποιήσει κάθε προγραμματιστής Node.js.

 

Έχοντας εξετάσει μερικά από τα κύρια χαρακτηριστικά της πλατφόρμας Node.js, ας το δοκιμάσουμε εν δράσει. Ας ξεκινήσουμε με την εγκατάσταση.

 

 

Node.js

 

 

Εγκατάσταση του Node.js

 

Το Node.js μπορεί να εγκατασταθεί με διάφορους τρόπους, τους οποίους θα καλύψουμε αμέσως. Έτσι, μπορείτε να βρείτε τα επίσημα πακέτα εγκατάστασης για όλες τις μεγάλες πλατφόρμες.

 

Υπάρχει ένας άλλος πολύ βολικός τρόπος για την εγκατάσταση του Node.js, ο οποίος είναι η χρήση του διαχειριστή πακέτων που παρέχεται στο λειτουργικό σύστημα. Για παράδειγμα, ο διαχειριστής πακέτων macOS, που είναι το de facto πρότυπο σε αυτήν την περιοχή, ονομάζεται Homebrew.

 

Εάν έχετε ένα στο σύστημά σας, μπορείτε να εγκαταστήσετε το Node.js εκτελώντας αυτήν την εντολή στη γραμμή εντολών:

 

κόμβος εγκατάστασης παρασκευής

 

Εδώ μπορείτε να βρείτε μια λίστα διαχειριστών πακέτων για άλλα λειτουργικά συστήματα, συμπεριλαμβανομένων των Linux και των Windows.

 

Ένας δημοφιλής διαχειριστής έκδοσης Node.js είναι το nvm. Αυτό το εργαλείο σάς επιτρέπει να αλλάζετε εύκολα μεταξύ διαφορετικών εκδόσεων του Node.js, με τη βοήθεια του μπορείτε, για παράδειγμα, να εγκαταστήσετε και να δοκιμάσετε μια νέα έκδοση του Node.js και, στη συνέχεια, εάν είναι απαραίτητο, να επιστρέψετε στην παλιά. Το Nvm είναι επίσης χρήσιμο σε περίπτωση που πρέπει να δοκιμάσετε κάποιον κώδικα σε μια παλιά έκδοση του Node.js.

 

Για αρχάριους να χρησιμοποιούν τα επίσημα προγράμματα εγκατάστασης Node.js. Για χρήστες macOS, θα συνιστούσατε να εγκαταστήσετε το Node.js χρησιμοποιώντας το Homebrew. Τώρα που έχετε εγκαταστήσει το Node.js, ήρθε η ώρα να γράψετε το "Hello World".

 

Πρώτη εφαρμογή Node.js

 

Το πιο κοινό παράδειγμα μιας πρώτης εφαρμογής Node.js είναι ένας απλός διακομιστής ιστού. Εδώ είναι ο κωδικός του:

const http = απαιτείται ('http')

const hostname = '127.0.0.1'

θύρα const = 3000

const server = http.createServer ((req, res) = & gt; {

res.statusCode = 200

res.setHeader ('Content-Type', 'text / plain')

res.end ('Γεια σας Κόσμος \ n')

})

server.listen (θύρα, όνομα κεντρικού υπολογιστή, () = & gt; {

console.log ("Ο διακομιστής εκτελείται σε http: // $ {hostname}: $ {port} /")

})

 

Για να εκτελέσετε αυτόν τον κώδικα, αποθηκεύστε τον σε ένα αρχείο server.js και εκτελέστε την ακόλουθη εντολή στο τερματικό:

 

κόμβος server.js

 

Για να ελέγξετε τον διακομιστή, ανοίξτε ένα πρόγραμμα περιήγησης και εισαγάγετε στη γραμμή διευθύνσεων http://127.0.0.1:3000, δηλαδή τη διεύθυνση του διακομιστή που θα εμφανίζεται στην κονσόλα μετά την επιτυχή εκκίνηση. Εάν όλα λειτουργούν όπως θα έπρεπε, η σελίδα θα εμφανίσει το "Hello World".

 

Ας δούμε αυτό το παράδειγμα.

 

Αρχικά, παρατηρήστε ότι ο κώδικας περιέχει την εντολή για τη σύνδεση της μονάδας HTTP.

 

Η πλατφόρμα Node.js διαθέτει ένα εξαιρετικό πρότυπο σύνολο ενοτήτων, το οποίο περιλαμβάνει καλά αναπτυγμένους μηχανισμούς για τη συνεργασία με το δίκτυο.

Η μέθοδος αντικειμένου createServer () δημιουργεί έναν νέο διακομιστή HTTP και τον επιστρέφει.

 

Ο διακομιστής έχει ρυθμιστεί ώστε να ακούει σε μια συγκεκριμένη θύρα σε έναν συγκεκριμένο κεντρικό υπολογιστή. Όταν ο διακομιστής είναι έτοιμος, καλείται η αντίστοιχη επιστροφή κλήσης, που μας ενημερώνει ότι ο διακομιστής εκτελείται.

Όταν ο διακομιστής λαμβάνει ένα αίτημα, ένα συμβάν ενεργοποιείται που παρέχει δύο αντικείμενα. Το πρώτο είναι το αίτημα (req, το αντικείμενο http.IncomingMessage), το δεύτερο είναι η απόκριση (res, το αντικείμενο http.ServerResponse). Είναι οι πιο σημαντικοί μηχανισμοί για το χειρισμό αιτημάτων HTTP.

 

Το πρώτο μας παρέχει πληροφορίες σχετικά με το αίτημα. Στο απλό μας παράδειγμα, δεν χρησιμοποιούμε αυτά τα δεδομένα, αλλά, εάν είναι απαραίτητο, χρησιμοποιώντας το αντικείμενο, μπορείτε να έχετε πρόσβαση στις κεφαλίδες αιτήματος και στα δεδομένα που διαβιβάζονται σε αυτό.

 

Το δεύτερο απαιτείται για να σχηματίσετε και να στείλετε μια απάντηση σε ένα αίτημα.

 

Σε αυτήν την περίπτωση, σχηματίζουμε την απάντηση στο αίτημα ως εξής. Αρχικά, ορίζουμε τον κωδικό κατάστασης ιδιοκτησίας σε τιμή 200, η ​​οποία υποδεικνύει μια επιτυχημένη λειτουργία:

 

res.statusCode = 200

Στη συνέχεια, ορίζουμε τον τίτλο Content-Type:

res.setHeader ('Content-Type', 'text / plain')

Στη συνέχεια ολοκληρώνουμε την προετοιμασία της απόκρισης προσθέτοντας το περιεχόμενό της ως επιχείρημα στο τέλος της μεθόδου ():

res.end ('Γεια σας Κόσμος \ n')

 

Έχουμε ήδη αναφέρει ότι έχει δημιουργηθεί ένα ισχυρό οικοσύστημα γύρω από την πλατφόρμα Node.js. Ας συζητήσουμε τώρα μερικά δημοφιλή πλαίσια και βοηθητικά εργαλεία για το Node.js.

 

Εργαλεία πλαισίων και βοηθητικών εργαλείων για το Node.js

 

Το Node.js είναι μια πλατφόρμα χαμηλού επιπέδου. Προκειμένου να απλοποιηθεί η ανάπτυξη και να διευκολυνθεί η ζωή των προγραμματιστών, δημιουργήθηκε ένας τεράστιος αριθμός βιβλιοθηκών. Μερικά από αυτά έχουν γίνει πολύ δημοφιλή με την πάροδο του χρόνου. Εδώ είναι μια μικρή λίστα βιβλιοθηκών που νομίζω ότι είναι καλά δουλειά και αξίζει να εξερευνήσετε:

 

Εξπρές: Αυτή η βιβλιοθήκη παρέχει στον προγραμματιστή ένα εξαιρετικά απλό αλλά ισχυρό εργαλείο για τη δημιουργία διακομιστών ιστού. Το κλειδί για την επιτυχία της Express ήταν η μινιμαλιστική προσέγγιση και η εστίαση σε βασικούς μηχανισμούς από την πλευρά του διακομιστή χωρίς να προσπαθήσουμε να επιβάλουμε ένα όραμα της αρχιτεκτονικής του διακομιστή «μίας στάσης».

 

Μετέωρο: Είναι ένα ισχυρό πλαίσιο πλήρους στοίβας που ακολουθεί μια ισόμορφη προσέγγιση για την ανάπτυξη εφαρμογών JavaScript και τη χρήση κώδικα τόσο στον πελάτη όσο και στον διακομιστή. Κάποτε το Meteor ήταν ένα αυτόνομο εργαλείο που περιλαμβάνει όλα όσα μπορεί να χρειαστεί ένας προγραμματιστής. Τώρα ενσωματώνεται επίσης με βιβλιοθήκες frontend όπως React, Vue και Angular. Το Meteor, εκτός από την ανάπτυξη κοινών εφαρμογών ιστού, μπορεί επίσης να χρησιμοποιηθεί στην ανάπτυξη κινητών.

 

Κόα: Αυτό το πλαίσιο ιστού δημιουργήθηκε από την ίδια ομάδα πίσω από το Express Με βάση την πολυετή εμπειρία με το Express, αναπτύχθηκε με έμφαση στην απλότητα και τη συμπαγή. Αυτό το έργο προέκυψε ως λύση στο πρόβλημα της πραγματοποίησης σημαντικών αλλαγών στο Express που δεν είναι συμβατές με άλλους μηχανισμούς-πλαίσια που θα μπορούσαν να χωρίσουν την κοινότητα.

 

Next.js: Αυτό το πλαίσιο έχει σχεδιαστεί για να οργανώσει την απόδοση εφαρμογών React από την πλευρά του διακομιστή.

 

Μικρο: Πρόκειται για μια πολύ ελαφριά βιβλιοθήκη για τη δημιουργία ασύγχρονων μικροϋπηρεσιών HTTP.

Socket.io. Είναι μια βιβλιοθήκη για την ανάπτυξη εφαρμογών δικτύου σε πραγματικό χρόνο.

 

Στην πραγματικότητα, στο οικοσύστημα Node.js, μπορείτε να βρείτε μια βοηθητική βιβλιοθήκη για σχεδόν οποιαδήποτε εργασία. Όπως μπορείτε να φανταστείτε, χρειάζεται πολύς χρόνος για τη δημιουργία ενός τέτοιου οικοσυστήματος. Η πλατφόρμα Node.js εμφανίστηκε το 2009. Κατά τη διάρκεια της ύπαρξής του, έχουν συμβεί πολλά πράγματα που πρέπει να είναι γνωστά σε έναν προγραμματιστή που θέλει να μάθει αυτήν την πλατφόρμα.

 

Μια σύντομη ιστορία του Node.js

 

Ο Node.js είναι 9 ετών φέτος. Αυτό, φυσικά, δεν είναι τόσο πολύ όταν συγκρίνετε αυτήν την ηλικία με την ηλικία του JavaScript, η οποία είναι ήδη 23 ετών, ή με την ηλικία των 25 ετών στο διαδίκτυο, όπως το γνωρίζουμε αν μετράτε από την έλευση του μωσαϊκού πρόγραμμα περιήγησης.

 

Τα 9 χρόνια είναι ένας σύντομος χρόνος για την τεχνολογία, αλλά τώρα φαίνεται ότι η πλατφόρμα Node.js υπήρχε πάντα.

 

Με το Node.js από τις πρώτες εκδόσεις της πλατφόρμας όταν ήταν μόλις 2 ετών. Ακόμα και τότε, παρά το γεγονός ότι δεν υπήρχαν τόσες πολλές πληροφορίες για το Node.js, κάποιος θα μπορούσε ήδη να αισθανθεί ότι το Node.js είναι πολύ σοβαρό.

 

Τώρα ας μιλήσουμε για τις τεχνολογίες πίσω από το Node.js και ρίξτε μια γρήγορη ματιά στοκύριες εξελίξεις που σχετίζονται με αυτήν την πλατφόρμα.

 

Έτσι, το JavaScript είναι μια γλώσσα προγραμματισμού που δημιουργήθηκε στο Netscape ως γλώσσα δέσμης ενεργειών για χειρισμό ιστοσελίδων στο πρόγραμμα περιήγησης Netscape Navigator.

Μέρος της επιχείρησης της Netscape ήταν η πώληση διακομιστών ιστού, που περιλάμβαναν ένα περιβάλλον που ονομάζεται Netscape LiveWire. Σας επέτρεψε να δημιουργήσετε δυναμικές ιστοσελίδες χρησιμοποιώντας JavaScript από διακομιστή.

 

η ιδέα της χρήσης JS για ανάπτυξη από διακομιστή είναι πολύ παλαιότερη από το Node.js. Αυτή η ιδέα είναι σχεδόν τόσο παλιά όσο η ίδια η JavaScript, αλλά την εν λόγω εποχή, το JS από διακομιστή δεν ήταν δημοφιλές.

 

Ένας από τους βασικούς παράγοντες που έκαναν την πλατφόρμα Node.js τόσο διαδεδομένη και δημοφιλής είναι όταν εμφανίστηκε για πρώτη φορά. Έτσι, λίγα χρόνια νωρίτερα, η JavaScript είχε αρχίσει να θεωρείται σοβαρή γλώσσα. Αυτό συνέβη χάρη στις εφαρμογές Web 2.0 όπως οι Χάρτες Google ή το Gmail, οι οποίες έδειξαν στον κόσμο τη δύναμη των σύγχρονων τεχνολογιών Ιστού.

 

Χάρη στον ανταγωνιστικό πόλεμο των προγραμμάτων περιήγησης, που συνεχίζεται μέχρι σήμερα, η απόδοση των μηχανών JavaScript έχει αυξηθεί σημαντικά. Οι ομάδες ανάπτυξης πίσω από τα μεγάλα προγράμματα περιήγησης εργάζονται καθημερινά για τη βελτίωση της απόδοσης των λύσεών τους, η οποία έχει ευεργετική επίδραση στο JavaScript γενικά.

 

Ένας τέτοιος κινητήρας είναι ο ήδη αναφερόμενος V8, που χρησιμοποιείται στο πρόγραμμα περιήγησης Chrome και χρησιμοποιείται στο Node.js. Είναι ένα από τα αποτελέσματα των προγραμματιστών του προγράμματος περιήγησης που προσπαθούν για κώδικα JavaScript υψηλής απόδοσης.

 

Φυσικά, η δημοτικότητα του Node.js βασίζεται όχι μόνο σε μια τυχερή σύμπτωση και στο γεγονός ότι η πλατφόρμα γεννήθηκε την κατάλληλη στιγμή. Εισήγαγε τον κόσμο σε μια καινοτόμο προσέγγιση στην ανάπτυξη JavaScript από διακομιστή. Ας δούμε τα σημαντικότερα ορόσημα στην ιστορία του Node.js.

 

2009


  • Η εμφάνιση του Node.js

  • Δημιουργία της πρώτης παραλλαγής npm.

 

2010

  • Η εμφάνιση του Express.

  • Η εμφάνιση του Socket.io.

 

2011


  • Έκδοση Npm 1.0.

  • Μεγάλες εταιρείες όπως το LinkedIn και η Uber έχουν αρχίσει να χρησιμοποιούν το Node.js.

 

2012


  • Η ραγδαία αύξηση της δημοτικότητας του Node.js.

 

2013


  • Η εμφάνιση του Ghost, η πρώτη μεγάλη πλατφόρμα για εκδόσεις που χρησιμοποιούν το Node.js.

  • Απελευθέρωση Koa.

 

2014


  • Δραματικές εκδηλώσεις έχουν πραγματοποιηθεί φέτος. Το έργο IO.js εμφανίστηκε, το οποίο είναι ένα πιρούνι του Node.js, σκοπός του οποίου, μεταξύ άλλων, ήταν να εισαγάγει την υποστήριξη ES6 και να επιταχύνει την ανάπτυξη της πλατφόρμας.

 

2015


  • Ιδρύεται το Ίδρυμα Node.js.

  • Συγχώνευση IO.js και Node.js.

  • Σε npm, καθίσταται δυνατή η εργασία με ιδιωτικές ενότητες.

  • Απόδοση Node.js 4 (θα πρέπει να σημειωθεί ότι οι εκδόσεις 1, 2 και 3 από την πλατφόρμα δεν ήταν).

 

2016


  • Συμβάν πακέτου αριστερού μαξιλαριού.

  • Η εμφάνιση του Νήματος.

  • Έκδοση Node.js 6.

 

2017


  • Το Npm αρχίζει να δίνει μεγαλύτερη προσοχή στην ασφάλεια.

  • Έκδοση Node.js 8

  • Η εμφάνιση της υποστήριξης για HTTP / 2.

  • Το V8 αναγνωρίζεται επίσημα ως κινητήρας JS σχεδιασμένος όχι μόνο για το Chrome αλλά και για το Node.

  • Υπάρχουν 3 δισεκατομμύρια λήψεις npm κάθε εβδομάδα.

 

2018


  • Έκδοση Node.js 10.

  • Υποστήριξη για ενότητες ES.

  • Πειραματική υποστήριξη mjs.