Η Deno υποστηρίζει ήδη μονάδες NPM

deno npm

Η πλατφόρμα αναπτύσσεται από τον Ryan Dahl, δημιουργό του Node.js.

Πρόσφατα κυκλοφόρησε η είδηση ​​της κυκλοφορίας της νέας έκδοσης του πλαισίου Deno 1.28, το οποίο επιτρέπει την εκτέλεση αυτόνομων εφαρμογών JavaScript και TypeScript που μπορούν να χρησιμοποιηθούν για τη δημιουργία ελεγκτών που εκτελούνται στον διακομιστή.

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

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

Μερικά από τα χαρακτηριστικά Τα κυριότερα του Deno είναι τα εξής:

  • Ενσωματωμένη υποστήριξη γλώσσας TypeScript εκτός από JavaScript. Για τον έλεγχο τύπων και τη δημιουργία JavaScript, χρησιμοποιείται ο κανονικός μεταγλωττιστής TypeScript, ο οποίος οδηγεί σε πτώση της απόδοσης σε σύγκριση με την ανάλυση JavaScript στο V8.
  • Ο χρόνος εκτέλεσης έρχεται με τη μορφή ενός ενιαίου αυτόνομου εκτελέσιμου αρχείου ("deno"). Για να εκτελέσετε εφαρμογές χρησιμοποιώντας το Deno, απλώς κατεβάστε ένα εκτελέσιμο αρχείο για την πλατφόρμα σας, μεγέθους περίπου 30 MB, το οποίο δεν έχει εξωτερικές εξαρτήσεις και δεν απαιτεί ειδική εγκατάσταση στο σύστημά σας.
  • Αποτελεσματική επεξεργασία αιτημάτων δικτύου μέσω HTTP, η πλατφόρμα έχει σχεδιαστεί για τη δημιουργία εφαρμογών δικτύου υψηλής απόδοσης
  • Η δυνατότητα δημιουργίας καθολικών εφαρμογών ιστού που μπορούν να εκτελεστούν τόσο σε Deno όσο και σε κανονικό πρόγραμμα περιήγησης ιστού
  • Η παρουσία ενός τυπικού συνόλου μονάδων, η χρήση των οποίων δεν απαιτεί δέσμευση σε εξωτερικές εξαρτήσεις.
  • Οι μονάδες Standard Collection έχουν ελεγχθεί περαιτέρω και δοκιμαστεί για συμβατότητα
  • Το πακέτο περιλαμβάνει ένα ενσωματωμένο σύστημα επιθεώρησης εξάρτησης (εντολή "deno info") και ένα βοηθητικό πρόγραμμα μορφοποίησης κώδικα (deno fmt).
  • Όλα τα σενάρια εφαρμογών μπορούν να συνδυαστούν σε ένα αρχείο JavaScript.

Κύρια νέα του Deno 1.28

Η βασική αλλαγή στη νέα έκδοση είναι η σταθεροποίηση της συμβατότητας με πακέτα που φιλοξενούνται στο αποθετήριο NPM, τι επιτρέπει στην Deno να χρησιμοποιεί περισσότερες από 1,3 εκατομμύρια μονάδες κατασκευασμένο για την πλατφόρμα Node.js. Για παράδειγμα, οι εφαρμογές που βασίζονται σε Deno μπορούν πλέον να χρησιμοποιούν λειτουργικές μονάδες μόνιμης πρόσβασης δεδομένων όπως τα Prisma, Mongoose και MySQL, καθώς και πλαίσια διεπαφής όπως το React και το Vue.

Ορισμένες μονάδες NPM εξακολουθούν να είναι ασύμβατες με το Deno, για παράδειγμα, λόγω δεσμεύσεων σε συγκεκριμένα περιβάλλοντα Node.js, όπως το αρχείο package.json. Δεν είναι επίσης δυνατή η χρήση της εντολής "deno compile" με μονάδες NPM. Σχεδιάζονται μελλοντικές εκδόσεις για την αντιμετώπιση αυτών των ασυμβατοτήτων και περιορισμών.

Το σύστημα μονάδων Το Deno legacy ECMAScript και το μοντέλο λειτουργικής μονάδας Web API παραμένουν ίδια, και το γνωστό σχήμα φόρτωσης που βασίζεται σε URL του Deno χρησιμοποιείται για την εισαγωγή λειτουργικών μονάδων NPM.

Η χρήση πακέτων NPM στο Deno είναι πολύ πιο εύκολη από ό,τι στο Node.js, επειδή δεν υπάρχει ανάγκη προεγκατάστασης λειτουργικών μονάδων (οι μονάδες εγκαθίστανται όταν η εφαρμογή ξεκινά για πρώτη φορά), το αρχείο package.json δεν χρησιμοποιείται και ο κατάλογος node_modules δεν χρησιμοποιείται, χρησιμοποιείται από προεπιλογή (οι μονάδες αποθηκεύονται προσωρινά στον κοινόχρηστο κατάλογο, αλλά είναι δυνατή η επαναφορά της προηγούμενης συμπεριφοράς με την επιλογή "--node-modules-dir").

εφαρμογές που βασίζονται σε Η NPM διατηρεί τη δυνατότητα χρήσης μηχανισμών ελέγχου πρόσβασης, Deno απομόνωση και ενεργοποίηση για προηγμένες λειτουργίες που επηρεάζουν την ασφάλεια. Για την αντιμετώπιση επιθέσεων μέσω αμφισβητήσιμων εξαρτήσεων, Το Deno αποκλείει από προεπιλογή όλες τις προσπάθειες πρόσβασης στο σύστημα από εξαρτήσεις και εμφανίζει μια προειδοποίηση για προβλήματα που εντοπίστηκαν. Για παράδειγμα, όταν η λειτουργική μονάδα επιχειρεί να γράψει στο /usr/bin/, θα εμφανιστεί μια προτροπή επιβεβαίωσης για αυτήν τη λειτουργία:

Βελτιώσεις που δεν σχετίζονται με το NPM στη νέα έκδοση περιλαμβάνει αναβάθμιση κινητήρα V8 για την έκδοση 10.9, αυτόματη ανίχνευση κλειδωμένων αρχείων, σταθεροποίηση των Deno.bench(), Deno.gid(), Deno.networkInterfaces(), Deno.systemMemoryInfo( ) και των API Deno. .uid(), προσθέτοντας ένα νέο ασταθές API Deno.Command() για την εκτέλεση εντολών (καθολική αντικατάσταση για Deno.spawn, Deno.spawnSync και Deno.spawnChild).

Τέλος αξίζει να αναφέρουμε ότι Όπως το Node.js, το Deno χρησιμοποιεί τη μηχανή JavaScript V8., το οποίο χρησιμοποιείται επίσης σε προγράμματα περιήγησης που βασίζονται στο Chromium. Ταυτόχρονα, το Deno δεν είναι ένα fork του Node.js, αλλά ένα νέο έργο που δημιουργήθηκε από την αρχή. Ο κώδικας του έργου κυκλοφορεί με την άδεια του MIT και είναι διαθέσιμες έτοιμες εκδόσεις για Linux, Windows και macOS.

Αν είστε ενδιαφέρεται να μάθει περισσότερα για αυτό, μπορείτε να συμβουλευτείτε τον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: AB Internet Networks 2008 SL
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.