Εισαγωγή
Όταν προσπαθείτε να μάθετε για τον ιστό
ανάπτυξη, συνήθως βρίσκουμε ότι το front-end είναι πολύ πιο προσιτό από το back-end. Υπάρχουν πολλοί λόγοι για αυτό, ιδιαίτερα η αίσθηση της άμεσης ανατροφοδότησης που προέρχεται από την αλλαγή ενός συγκεκριμένου στοιχείου μιας σελίδας στον κώδικα και την παρατήρηση της αλλαγής που εφαρμόζεται στον ιστότοπο. Αυτή η ανατροφοδότηση είναι συχνά χρήσιμη για αρχάριους, επειδή τους δίνει τη δυνατότητα να προσαρμόσουν τον κώδικά τους και να μάθουν από τα λάθη τους. Δυστυχώς, δεν συμβαίνει με το backend: πολλές φορές, ένας σημαντικός όγκος εργασίας αφιερώνεται στη ρύθμιση του περιβάλλοντος εκ των προτέρων και στην εγκατάσταση των εξαρτήσεων που απαιτούνται για να εμφανιστεί ένα απλό μήνυμα "Hello World" στο τερματικό. Ευτυχώς, γίνεται συνεχώς μεγάλη πρόοδος στην κοινότητα ανοιχτού κώδικα προς τη διευκόλυνση της διαδικασίας ανάπτυξης πλαισίων και η βελτίωση της εμπειρίας του προγραμματιστή είναι ένα καλό παράδειγμα αυτού του πλαισίου βολικό κώδικα σε Javascript και προσφέρει μια ποικιλία από ενσωματωμένα εργαλεία και δυνατότητες που το διαφοροποιούν από τους ανταγωνιστές του Σε αυτό το άρθρο, θα εξερευνήσουμε το NodeJ και το οικοσύστημά του, με μια πρακτική προσέγγιση, δημιουργώντας ένα πλήρως λειτουργικό έργο.
Τι θα φτιάξουμε;
Οι εφαρμογές ToDo είναι ένα πρακτικό έργο για αρχάριους που μαθαίνουν την ανάπτυξη front-end. Αυτός είναι ο λόγος που αποφασίσαμε να δημιουργήσουμε ένα API λίστας Todo. Αυτό θα μας επιτρέψει να προσθέσουμε τη διατήρηση δεδομένων στη διεπαφή μας και θα μας δώσει τη δυνατότητα να χειριστούμε αυτά τα δεδομένα (με προσθήκη, ενημέρωση, διαγραφή εργασιών, κ.λπ.).
Μπορείτε να βρείτε τον τελικό κωδικό εδώ.
Τα εργαλεία μας
Θα χρησιμοποιήσουμε μια απλοποιημένη στοίβα τεχνολογίας για αυτό το έργο. Μπορεί να θεωρηθεί ως μια ελάχιστη έκδοση πολλών εργαλείων που θα βρείτε σε έργα της πραγματικής ζωής, ο λόγος είναι ότι οι ιδέες υψηλότερου επιπέδου είναι οι ίδιες. Οι λεπτομέρειες εφαρμογής και η επιλογή ενός συγκεκριμένου εργαλείου έναντι ενός άλλου δεν είναι σημαντικές για να ξεκινήσετε.
-
Το NodeJs, όπως αναφέραμε είναι ένα από τα πιο δημοφιλή Javascript πλαίσια για τη δημιουργία εφαρμογών από την πλευρά του διακομιστή.
-
Το ExpressJs είναι ένα ελάχιστο πλαίσιο Javascript που χρησιμοποιείται πάνω από το NodeJS. Επιταχύνει τη διαδικασία ανάπτυξης χρησιμοποιώντας πολλές ενσωματωμένες λειτουργίες. Χρησιμοποιείται επίσης ως τρόπος τυποποίησης των πρακτικών ανάπτυξης σε έργα NodeJS προκειμένου να διευκολυνθεί η χρήση του για μηχανικούς.
-
Το LowDB είναι μια απλή βάση δεδομένων στη μνήμη. Η απλότητά του μας επιτρέπει να δείξουμε πώς να αλληλεπιδράσουμε με μια βάση δεδομένων σε ένα έργο NodeJs, χωρίς να ασχολούμαστε με πιο προηγμένα θέματα όπως αναπτύξεις και διαμορφώσεις.
Τώρα που εντοπίσαμε όλα τα εργαλεία που θα χρησιμοποιήσουμε, ας πάμε στα πληκτρολόγιά μας και ας ξεκινήσουμε την κωδικοποίηση!
Εγκατάσταση
Το Node είναι διαθέσιμο σε όλες τις πλατφόρμες. Όλοι οι οδηγοί εγκατάστασης βρίσκονται στον επίσημο ιστότοπο. Οι χρήστες των Windows θα πρέπει να φροντίσουν να προσθέσουν τον κόμβο διαδρομή προς τις μεταβλητές περιβάλλοντος ώστε να μπορεί να χρησιμοποιηθεί στη γραμμή εντολών.
Θα χρειαστούμε επίσης εγκατεστημένο το npm. Το Npm είναι ο τυπικός διαχειριστής πακέτων για τα NodeJs. Θα μας επιτρέψει να διαχειριστούμε τις εξαρτήσεις του έργου μας. Μπορείτε να βρείτε τον οδηγό εγκατάστασης εδώ.
Αρχικοποίηση έργου
Μεταβείτε στον σύνδεσμο και κλωνοποιήστε το αρχικό έργο:
Αυτό είναι ένα απλό αρχικό αποθετήριο για το έργο μας. Περιέχει όλες τις εξαρτήσεις που θα χρησιμοποιήσουμε μαζί με τη δομή του αρχείου του έργου. Θα εξηγήσουμε κάθε στοιχείο μόλις φτάσουμε. Ανοίξτε το τερματικό σας, πλοηγηθείτε στη διαδρομή του έργου και εκτελέστε την εντολή:
npm install
Αυτό θα εγκαταστήσει όλες τις εξαρτήσεις του έργου που καθορίζονται στο αρχείο package.json. Το package.json είναι το αρχείο που βρίσκεται στη ρίζα οποιουδήποτε έργου Javascript/NodeJs, περιέχει μεταδεδομένα για το τελευταίο και χρησιμοποιείται για τη διαχείριση όλων των εξαρτήσεων του έργου, των σεναρίων και των εκδόσεων.
Αφού εγκατασταθούν όλες οι εξαρτήσεις, μπορούμε να ξεκινήσουμε την εφαρμογή μας:
npm run start
Το "start" είναι ένα σενάριο που καθορίσαμε στο πακέτο. αρχείο json. Καθορίζει το αρχείο καταχώρισης στην εφαρμογή μας, που στην περίπτωσή μας είναι το app.js.
Το ακόλουθο μήνυμα θα πρέπει τώρα να εμφανιστεί στο τερματικό σας:
Αυτό σημαίνει ότι ο διακομιστής μας ξεκίνησε με επιτυχία και ακούει τυχόν αιτήματα που αποστέλλονται στη θύρα 3000. Ας δούμε το app.js και ας εξηγήσουμε τι συμβαίνει εδώ:
Το App.js είναι το αρχείο καταχώρισης του έργου μας (και το μοναδικό σε αυτό το σημείο). Δημιουργούμε μια εφαρμογή express με το όνομα app, καθορίζουμε ότι όλα τα αιτήματα που έχουν τη μέθοδο http "GET" και τη δευτερεύουσα διαδρομή "/" θα αντιμετωπίζονται από αυτήν τη διαδρομή, περνούν σε μια συνάρτηση που ονομάζεται ενδιάμεσο λογισμικό, η οποία δέχεται το αντικείμενο αίτησης και απόκρισης ως Παράμετροι. Αυτό είναι κρίσιμο, καθώς το αίτημα περιέχει όλες τις πληροφορίες που απαιτούνται για τον χειρισμό του (παραμέτρους, σώμα αιτήματος, κεφαλίδες αιτήματος κ.λπ.), και το αντικείμενο απόκρισης είναι αυτό που θα επιστραφεί στον πελάτη. Ξεκινάμε στέλνοντας απλώς το μήνυμα "Hello world". Μετά από αυτό, κάνουμε την εφαρμογή μας να ακούσει τυχόν εισερχόμενα αιτήματα προς τη θύρα που καθορίστηκε (στην περίπτωσή μας 3000) και καταγράψουμε το μήνυμα "Listening to port 3000" για να υποδείξουμε ότι η εφαρμογή μας είναι σε λειτουργία και είναι έτοιμη να λάβει αιτήματα.
Ανοίξτε το τερματικό σας και στη γραμμή συνδέσμων πληκτρολογήστε "localhost:3000/" και πατήστε Enter. Αυτή είναι η καθορισμένη διαδρομή που μπορούμε να χρησιμοποιήσουμε για να φτάσουμε στον διακομιστή μας τοπικά. Θα λάβετε το ακόλουθο μήνυμα:
Διαμόρφωση βάσης δεδομένων
Το Lowdb είναι μια βάση δεδομένων ανοιχτού κώδικα που είναι εύκολη στη χρήση και δεν απαιτεί συγκεκριμένη ρύθμιση. Η γενική ιδέα πίσω από αυτό είναι η αποθήκευση όλων των δεδομένων σε ένα τοπικό αρχείο json. Αφού εγκατασταθεί το LowDB (κάτι που έγινε όταν εγκαταστήσαμε όλες τις εξαρτήσεις), μπορούμε να προσθέσουμε τον ακόλουθο κώδικα στο db.js:
Αυτός ο κώδικας είναι αρκετά παρόμοιος με αυτόν που βρίσκεται στην επίσημη τεκμηρίωση του LowDB. Το τροποποιήσαμε λίγο για δική μας περίπτωση χρήσης. Ας το εξηγήσουμε γραμμή προς γραμμή:
Οι πρώτες γραμμές είναι για την εισαγωγή των απαραίτητων εξαρτήσεων. Το "join" είναι μια βοηθητική συνάρτηση διαθέσιμη στη μονάδα "path". Είναι μια από τις βασικές μονάδες των NodeJs που προσφέρει πολλές μεθόδους αντιμετώπισης και χειρισμού μονοπατιών. Το "Low" και το "JSONFile" είναι οι δύο κλάσεις που εκτίθενται από το LowDB. Το πρώτο δημιουργεί την παρουσία του αρχείου json που θα περιέχει τα δεδομένα μας. Το δεύτερο δημιουργεί το πραγματικό παράδειγμα βάσης δεδομένων που θα ενεργήσει σε αυτό. Τέλος, η "lodash" είναι μια από τις πιο χρησιμοποιούμενες βιβλιοθήκες javascript που προσφέρει μια μεγάλη ποικιλία βοηθητικών λειτουργιών για κοινές εργασίες προγραμματισμού. Το προσθέτουμε στην παρουσία της βάσης δεδομένων μας για να μπορέσουμε να χρησιμοποιήσουμε τις προηγμένες μεθόδους του για να χειριστούμε τα δεδομένα μας.
Αρχικά, καθορίζουμε τη διαδρομή για το αρχείο db.json. Είναι το αρχείο που θα περιέχει τα δεδομένα μας και θα περάσει στο LowDB. Εάν το αρχείο δεν βρεθεί στην καθορισμένη διαδρομή, το LowDB θα δημιουργήσει ένα.
Στη συνέχεια, περνάμε τη διαδρομή του αρχείου στον προσαρμογέα LowDB και το περνάμε στη νέα μας παρουσία βάσης δεδομένων LowDB. Η μεταβλητή «db» μπορεί στη συνέχεια να χρησιμοποιηθεί για την επικοινωνία με τη βάση δεδομένων μας. Μόλις δημιουργηθεί η παρουσία της βάσης δεδομένων, διαβάζουμε από το αρχείο json χρησιμοποιώντας db.read(). Αυτό θα ορίσει το πεδίο "δεδομένα" στην παρουσία της βάσης δεδομένων μας, ώστε να μπορούμε να έχουμε πρόσβαση στο περιεχόμενο της βάσης δεδομένων. Παρατηρήστε ότι προηγηθήκαμε αυτής της γραμμής με το "wait". Αυτό γίνεται για να διευκρινιστεί ότι αυτή η εντολή μπορεί να χρειαστεί άγνωστο χρονικό διάστημα για να επιλυθεί και ότι η διαδικασία NodeJs πρέπει να περιμένει την εκτέλεσή της πριν προχωρήσει με τον υπόλοιπο κώδικα. Αυτό το κάνουμε επειδή η λειτουργία ανάγνωσης απαιτεί πρόσβαση στη μνήμη στο καθορισμένο αρχείο και ο χρόνος για την εκτέλεση αυτού του είδους λειτουργίας εξαρτάται από τις προδιαγραφές του μηχανήματος σας.
Τώρα που έχουμε πρόσβαση στο πεδίο δεδομένων, το ορίζουμε ως αντικείμενο που περιέχει έναν κενό πίνακα αναρτήσεων, ή καλύτερα, ελέγχουμε αν το αρχείο περιέχει προηγούμενα δεδομένα και ορίζουμε τον κενό πίνακα αν δεν ισχύει.
Τέλος, εκτελούμε τη db.write() για να εφαρμόσουμε τις τροποποιήσεις που κάναμε στα δεδομένα και εξάγουμε την παρουσία της βάσης δεδομένων ώστε να μπορεί να χρησιμοποιηθεί σε άλλα αρχεία του έργου μας.
Ροή εργασιών Γενικού Αιτήματος/Απάντησης
Σκεφτείτε το ακόλουθο διάγραμμα:
Δείχνει τη γενική αρχιτεκτονική που εφαρμόζεται σε μια πληθώρα εφαρμογών backend που έχουν κατασκευαστεί με NodeJs/Express. Η κατανόηση της γενικής ροής εργασιών πίσω από τον χειρισμό ενός αιτήματος όχι μόνο θα σας επιτρέψει να δημιουργήσετε και να δομήσετε εφαρμογές NodeJs, αλλά επίσης θα σας επιτρέψει να μεταφέρετε αυτές τις έννοιες σε σχεδόν οποιαδήποτε τεχνική στοίβα της επιλογής σας. Θα εξερευνήσουμε τα διαφορετικά επίπεδα που παρεμβαίνουν σε αυτή τη διαδικασία και θα εξηγήσουμε τους ρόλους τους:
## Επίπεδο αιτήματος HTTP
Αυτό είναι το πρώτο επίπεδο στην εφαρμογή μας, φανταστείτε το ως μια πύλη που λαμβάνει ένα ευρύ φάσμα διαφορετικών αιτημάτων που προέρχονται από διαφορετικούς πελάτες. Στη συνέχεια, κάθε αίτημα αναλύεται και προωθείται στο ειδικό τμήμα της εφαρμογής για να το χειριστείτε.
-
Δρομολογητές: εδώ αναφερόμαστε σε δρομολογητές Express, αλλά αυτή η έννοια μπορεί να βρεθεί σε πολλά πλαίσια backend. Οι δρομολογητές είναι ένας τρόπος για να εφαρμόσουμε τη λογική κατανομή της επιχειρηματικής μας λογικής στον κώδικά μας, που σημαίνει ότι κάθε σύνολο στοιχείων που μοιράζονται παρόμοια χαρακτηριστικά αντιμετωπίζονται από την ίδια καταχώρηση και μπορούν να διαχωριστούν από τα υπόλοιπα σύνολα. Αυτό έχει το πλεονέκτημα ότι καθιστά κάθε στοιχείο του κώδικα ανεξάρτητο από τα άλλα και είναι ευκολότερο στη συντήρηση και επέκταση. Πιο συγκεκριμένα, και για παράδειγμα, όλα τα αιτήματα που πληρούν τις προϋποθέσεις της κοινόχρηστης διαδρομής url "/posts" θα αντιμετωπίζονται από τον ίδιο δρομολογητή. Ανάλογα με τη μέθοδο http τους (GET, POST, κ.λπ.. ), θα χρησιμοποιηθεί διαφορετικός ελεγκτής.
-
Ελεγκτές: ένας ελεγκτής λαμβάνει φιλτραρισμένα αιτήματα από δρομολογητές, εφαρμόζει πρόσθετη επεξεργασία και καλεί τις κατάλληλες μεθόδους εξυπηρέτησης.
Επιχειρησιακό Λογικό Επίπεδο
Αυτό το επίπεδο είναι μοναδικό ανάλογα με τις συγκεκριμένες περιπτώσεις χρήσης της εφαρμογής και την επιχειρηματική λογική πίσω από αυτό.
-
Υπηρεσίες: Οι υπηρεσίες είναι ένα σύνολο μεθόδων που περιέχουν τη βασική λογική της εφαρμογής. Επίσης, αλληλεπιδρούν με τη βάση δεδομένων μέσω της χρήσης του ORMs/ODMs.).
-
Υπηρεσίες τρίτων: πολλές σύγχρονες εφαρμογές επιλέγουν να εκχωρήσουν ένα μέρος της λογικής της εφαρμογής σε αποκλειστικές υπηρεσίες προσβάσιμες μέσω ενός API. Υπηρεσίες αυτού του είδους μπορεί να είναι υπηρεσίες διαχείρισης πληρωμών, αποθήκευση στατικών αρχείων, ειδοποιήσεις και άλλες.
-
ODM/ORM: Τα ORM και τα ODM λειτουργούν ως μεσάζοντες μεταξύ των υπηρεσιών και της βάσης δεδομένων. Ο ρόλος τους είναι να παρέχουν μια αφαίρεση υψηλού επιπέδου σε μια βάση δεδομένων που επιτρέπει σε έναν προγραμματιστή να γράψει κώδικα στη γλώσσα προγραμματισμού της επιλογής του αντί για αποκλειστικές γλώσσες βάσης δεδομένων, όπως η SQL.
Επίπεδο επιμονής δεδομένων
- Βάσεις δεδομένων: όπως αναφέραμε προηγουμένως, σχεδόν όλες οι εφαρμογές χρειάζονται κάποια μορφή επιμονής δεδομένων. Αυτό το μέρος διαχειρίζεται βάσεις δεδομένων και ανάλογα με τη φύση των δεδομένων, την επιχειρηματική λογική και πολλά άλλα ζητήματα, η επιλογή μιας συγκεκριμένης βάσης δεδομένων έναντι μιας άλλης θεωρείται κρίσιμη για την αποτελεσματικότητα και την επεκτασιμότητα της εφαρμογής.
Παράδειγμα: Προσθήκη ανάρτησης
Τώρα που καταλαβαίνουμε τη γενική ιδέα πίσω από την αρχιτεκτονική, ας την εφαρμόσουμε στο απλό μας παράδειγμα. Θα εφαρμόσουμε τη δυνατότητα προσθήκης μιας ανάρτησης εκκρεμοτήτων στην εφαρμογή μας. Ας υποθέσουμε ότι κάθε ανάρτηση έχει ένα μοναδικό αναγνωριστικό που θα μας επιτρέψει να το αναγνωρίσουμε αργότερα στη βάση δεδομένων μας, έναν τίτλο που είναι συμβολοσειρά και μια σειρά που είναι ακέραιου τύπου. Ακολουθώντας το διάγραμμά μας, θα ξεκινήσουμε με την υλοποίηση του δρομολογητή. Προσθέστε τον ακόλουθο κώδικα στο αρχείο index.js:
Αυτό είναι το αρχείο του δρομολογητή μας. Εισάγουμε τη μέθοδο express και τη μέθοδο "addPost" από τον ελεγκτή μας (θα την εφαρμόσουμε σύντομα), δημιουργούμε μια παρουσία του δρομολογητή express και δεσμεύουμε τη μέθοδο addPost στον δρομολογητή μας - που σημαίνει ότι για κάθε αίτημα που έχει τη διαδρομή ρίζας και το http μέθοδο "POST", η μέθοδος "addPost" θα κληθεί να το χειριστεί.
Προτού εφαρμόσουμε τη μέθοδό μας στον ελεγκτή, αναφέρουμε τον νέο δρομολογητή στο κύριο αρχείο μας app.js και καθορίζουμε τη διαδρομή του ως "/posts": Όλες οι διαδρομές με τις καθορισμένες διαδρομές θα προωθηθούν σε αυτόν τον δρομολογητή, ώστε να είναι δυνατός ο χειρισμός του με τις διάφορες μεθόδους ελεγκτή:
Εισάγουμε τον δρομολογητή και τον ονομάζουμε "posts". app.use("/posts",..) σημαίνει ότι όλα τα αιτήματα με τη δευτερεύουσα διαδρομή "/posts", ανεξάρτητα από τη μέθοδο http, θα δρομολογούνται στον καθορισμένο δρομολογητή.
Άλλες αλλαγές στο app.js περιλαμβάνουν την εισαγωγή του αρχείου διαμόρφωσης της βάσης δεδομένων προκειμένου να εκτελεστεί και τη χρήση της express.json() ως ενδιάμεσου λογισμικού για να μπορέσουμε να έχουμε πρόσβαση στο αντικείμενο του σώματος αιτήματος.
Τώρα που έχουν οριστεί οι διαδρομές μας, μπορούμε να προσθέσουμε τη μέθοδο "addPost" στο αρχείο controller.js:
Το "addPost" είναι μια συνάρτηση ενδιάμεσου λογισμικού που λαμβάνει ως παραμέτρους το αίτημα, τα αντικείμενα απόκρισης και την επόμενη συνάρτηση. Όταν καλείται η επόμενη συνάρτηση, η διαδικασία θα μετακινηθεί στο επόμενο ενδιάμεσο λογισμικό της αλυσίδας ή θα τερματίσει το αίτημα. Στον κώδικα της μεθόδου, εξάγουμε τον τίτλο και την παραγγελία από το σώμα αιτήματος και τα μεταβιβάζουμε ως παραμέτρους στη συνάρτηση υπηρεσίας "createPost". Αυτή η συνάρτηση παίρνει τα χαρακτηριστικά ανάρτησης, δημιουργεί μια νέα ανάρτηση και την επιστρέφει. Μόλις δημιουργηθεί η νέα ανάρτηση, την επιστρέφουμε στον πελάτη μαζί με τον κωδικό κατάστασης 200, που σημαίνει ότι το αίτημα ήταν επιτυχές. Μπορεί να παρατηρήσετε ότι ο κώδικάς μας τοποθετείται μέσα σε ένα μπλοκ try/catch προκειμένου να εντοπιστεί οποιοδήποτε απροσδόκητο σφάλμα και να τον περάσει στο επόμενο ενδιάμεσο λογισμικό. Θεωρείται βέλτιστη πρακτική η σύνδεση σε όλους τους δρομολογητές ενός ενδιάμεσου λογισμικού διαχείρισης σφαλμάτων που εξάγει το σφάλμα και επιστρέφει ένα σημαντικό μήνυμα σφάλματος στον πελάτη.
Το μόνο που μένει τώρα είναι να εφαρμόσετε τη λειτουργία "createPost" στο service.js:
Όπως αναφέραμε προηγουμένως όταν εξηγήσαμε τα διαφορετικά επίπεδα της αρχιτεκτονικής, το επίπεδο υπηρεσίας αλληλεπιδρά με τη λύση αποθήκευσης δεδομένων μέσω της χρήσης ORM/ODM. Ωστόσο, στο παράδειγμά μας, δεν θα χρειαστεί να χρησιμοποιήσουμε ξεχωριστό ORM, καθώς το Lowdb διαθέτει ενσωματωμένη υποστήριξη για Javascript. Όλες οι λεπτομέρειες σχετικά με τη σύνταξή του βρίσκονται στην τεκμηρίωση.
Η μέθοδος "createPost" λαμβάνει τίτλο και σειρά ως παραμέτρους και τις χρησιμοποιεί για να δημιουργήσει το αντικείμενο ανάρτησης. Για το μοναδικό αναγνωριστικό, χρησιμοποιούμε μια αποκλειστική βιβλιοθήκη που ονομάζεται "nanoid", η οποία δημιουργεί μια μοναδική ακολουθία χαρακτήρων. Προσθέτουμε τη νέα ανάρτηση στον πίνακα αναρτήσεων στη βάση δεδομένων και γράφουμε αυτές τις αλλαγές. η νέα ανάρτηση στη συνέχεια επιστρέφεται από τη συνάρτηση.
Τώρα που το "createPost" είναι έτοιμο, η δυνατότητα προσθήκης αναρτήσεων έχει πλέον ολοκληρωθεί και λειτουργεί. Το δοκιμάζουμε χρησιμοποιώντας το Postman, ένα δημοφιλές εργαλείο για τη δοκιμή API:
Επιλέγουμε «POST» ως μέθοδο http για το αίτημα μαζί με την καθορισμένη διαδρομή url «localhost:3000/posts». Προσθέτουμε τον τίτλο και την παραγγελία ως μορφή json στην ενότητα body και στέλνουμε το αίτημα. Όπως φαίνεται παραπάνω, λαμβάνουμε την κατάσταση 200 OK μαζί με τη νέα ανάρτηση.
Συμπέρασμα
Πολλές έννοιες και ιδέες έχουν διερευνηθεί σε αυτό το έργο: Καλύψαμε πώς να εγκαταστήσουμε και να ρυθμίσουμε το περιβάλλον του έργου μας, μάθαμε πώς να διαμορφώνουμε το LowDB για τοπικά δεδομένα, εξερευνήσαμε τη γενική αρχιτεκτονική των εφαρμογών υποστήριξης NodeJS/Express και είδαμε πώς να εφαρμόστε το σε ένα απλό παράδειγμα. Τέλος, δοκιμάσαμε την εφαρμογή μας χρησιμοποιώντας το Postman.
Η πρόθεση εδώ ήταν να αποκαλυφθεί μια απλοποιημένη έκδοση όλων όσων αφορούν τη δημιουργία σύγχρονων εφαρμογών υποστήριξης. Όπως είδαμε νωρίτερα, το NodeJs είναι ένα ισχυρό εργαλείο που μας δίνει τη δυνατότητα να δημιουργήσουμε απλά και πολύπλοκα API. Σε συνδυασμό με το πλούσιο οικοσύστημα πλαισίων του, όπως το express και μια πληθώρα εργαλείων και βιβλιοθηκών για σχεδόν κάθε περίπτωση χρήσης, είναι μια νόμιμη λύση για τη σύγχρονη ανάπτυξη backend - μια λύση που συνιστούμε να μάθετε και να κυριαρχήσετε.