Πώς μπορώ να ξεκινήσω με το Node.js

Υπάρχουν κάποιοι καλοί πόροι για να ξεκινήσετε με το Node.JS; Κάποια καλά σεμινάρια, ιστολόγια ή βιβλία;

Φυσικά, έχω επισκεφθεί την επίσημη ιστοσελίδα του http://nodejs.org/, αλλά δεν νομίζω ότι η τεκμηρίωση που έχουν είναι ένα καλό σημείο εκκίνησης.

Εκπαιδευτικά μαθήματα

Σχόλια (27)

Πρώτα, μάθετε τις βασικές έννοιες του Node.js:

  • Θα θέλετε να κατανοήσετε το ασύγχρονο στυλ κωδικοποίησης που ενθαρρύνει το Node.js.
  • Async != concurrent. Κατανοήστε το βρόχο γεγονότων του Node.js's!
  • Το Node.js χρησιμοποιεί την require() σε στυλ CommonJS για τη φόρτωση κώδικα- είναι πιθανώς λίγο διαφορετικό από αυτό που έχετε συνηθίσει.
  • Εξοικειωθείτε με την τυπική βιβλιοθήκη του Node.js's. Έπειτα, θα θελήσετε να δείτε τι έχει να σας προσφέρει η κοινότητα: Το χρυσό πρότυπο για τη διαχείριση πακέτων του Node.js είναι το NPM.
  • Είναι ένα εργαλείο γραμμής εντολών για τη διαχείριση των εξαρτήσεων του έργου σας.
  • Βεβαιωθείτε ότι έχετε κατανοήσει πώς το Node.js και το NPM αλληλεπιδρούν με το έργο σας μέσω του φακέλου node_modules και του package.json.
  • Το NPM είναι επίσης ένα μητρώο σχεδόν κάθε πακέτου Node.js που υπάρχει Τέλος, θα θελήσετε να μάθετε ποια είναι μερικά από τα πιο δημοφιλή πακέτα για διάφορες εργασίες: Χρήσιμα εργαλεία για κάθε έργο:
  • Το Underscore περιέχει σχεδόν κάθε βασική βοηθητική μέθοδο που θέλετε.
  • Το Lo-Dash είναι ένας κλώνος του Underscore που στοχεύει να είναι ταχύτερος, πιο προσαρμόσιμος και έχει αρκετές λειτουργίες που το Underscore δεν έχει. Ορισμένες εκδόσεις του μπορούν να χρησιμοποιηθούν ως αντικαταστάτες του underscore.
  • Το TypeScript κάνει τη JavaScript σημαντικά πιο υποφερτή, ενώ παράλληλα σας κρατάει μακριά από μπελάδες!
  • Το JSHint είναι ένα εργαλείο ελέγχου κώδικα που'θα σας γλιτώσει πολύ χρόνο από την εύρεση ηλίθιων λαθών. Βρείτε ένα πρόσθετο για τον επεξεργαστή κειμένου σας που θα το εκτελεί αυτόματα στον κώδικά σας. Έλεγχος μονάδας:
  • Το Mocha είναι ένα δημοφιλές πλαίσιο δοκιμών.
  • Το Vows είναι μια φανταστική προσέγγιση των ασύγχρονων δοκιμών, αν και κάπως παρωχημένη.
  • Το Expresso είναι ένα πιο παραδοσιακό πλαίσιο δοκιμών μονάδας.
  • Το node-unit είναι ένα άλλο σχετικά παραδοσιακό πλαίσιο δοκιμών μονάδας.
  • Το AVA είναι ένας νέος test runner με ενσωματωμένο το Babel και εκτελεί δοκιμές ταυτόχρονα. Πλαίσια web:
  • Το Express.js είναι μακράν το πιο δημοφιλές πλαίσιο.
  • Το Koa είναι ένα νέο πλαίσιο ιστού που σχεδιάστηκε από την ομάδα πίσω από το Express.js, το οποίο στοχεύει να αποτελέσει ένα μικρότερο, πιο εκφραστικό και πιο ισχυρό θεμέλιο για εφαρμογές ιστού και APIs.
  • sails.js το πιο δημοφιλές πλαίσιο MVC για το Node.js, και βασίζεται στο express. Έχει σχεδιαστεί για να μιμείται το γνωστό μοτίβο MVC πλαισίων όπως το Ruby on Rails, αλλά με υποστήριξη των απαιτήσεων των σύγχρονων εφαρμογών: APIs με βάση τα δεδομένα και κλιμακούμενη, υπηρεσιοστρεφή αρχιτεκτονική.
  • Το Meteor συγκεντρώνει τα jQuery, Handlebars, Node.js, WebSocket, MongoDB και DDP και προωθεί τη σύμβαση έναντι της διαμόρφωσης χωρίς να είναι ένας κλώνος του Ruby on Rails.
  • Το Tower (deprecated) είναι μια αφαίρεση μιας κορυφής του Express.js που στοχεύει να είναι ένας κλώνος του Ruby on Rails.
  • Το Geddy είναι μια άλλη προσέγγιση των πλαισίων ιστού.
  • Το RailwayJS είναι ένα MVC πλαίσιο ιστού εμπνευσμένο από το Ruby on Rails.
  • Sleek.js είναι ένα απλό πλαίσιο ιστού, βασισμένο στο Express.js.
  • Το Hapi είναι ένα πλαίσιο με επίκεντρο τις ρυθμίσεις και ενσωματωμένη υποστήριξη για επικύρωση εισόδου, προσωρινή αποθήκευση, έλεγχο ταυτότητας κ.λπ.
  • Το Trails είναι ένα σύγχρονο πλαίσιο εφαρμογών ιστού. Βασίζεται στο γενεαλογικό δέντρο των Rails και Grails για να επιταχύνει την ανάπτυξη, ακολουθώντας μια απλή, βασισμένη σε συμβάσεις, σχεδιαστική φιλοσοφία με γνώμονα το API.
  • Το Danf είναι ένα full-stack OOP πλαίσιο που παρέχει πολλά χαρακτηριστικά προκειμένου να παράγονται κλιμακούμενες, συντηρήσιμες, ελέγξιμες και αποδοτικές εφαρμογές και επιτρέπει τον ίδιο τρόπο κώδικα τόσο στην πλευρά του διακομιστή (Node.js) όσο και στην πλευρά του πελάτη (πρόγραμμα περιήγησης).
  • Το Derbyjs είναι ένα αντιδραστικό πλαίσιο JavaScript πλήρους στοίχισης. Χρησιμοποιούν μοτίβα όπως ο αντιδραστικός προγραμματισμός και η ισομορφική JavaScript εδώ και πολύ καιρό.
  • Loopback.io είναι ένα ισχυρό πλαίσιο Node.js για τη δημιουργία APIs και την εύκολη σύνδεση με backend πηγές δεδομένων. Διαθέτει ένα SDK Angular.js και παρέχει SDKs για iOS και Android. Web Framework Tools:
  • Το Jade είναι η HAML/Slim του κόσμου του Node.js.
  • Η EJS είναι μια πιο παραδοσιακή γλώσσα template.
  • Μην ξεχνάτε τη μέθοδο Underscore's template method! Δικτύωση:
  • Το Connect είναι το Rack ή το WSGI του κόσμου του Node.js.
  • Το Request είναι μια πολύ δημοφιλής βιβλιοθήκη αιτημάτων HTTP.
  • Η socket.io είναι εύχρηστη για τη δημιουργία διακομιστών WebSocket. Αλληλεπίδραση γραμμής εντολών:
  • minimist απλά ανάλυση επιχειρημάτων γραμμής εντολών.
  • Η Yargs είναι μια ισχυρή βιβλιοθήκη για την ανάλυση των επιχειρημάτων της γραμμής εντολών.
  • Commander.js είναι μια πλήρης λύση για την κατασκευή εφαρμογών γραμμής εντολών μιας χρήσης.
  • Το Vorpal.js είναι ένα πλαίσιο για τη δημιουργία ώριμων, καθηλωτικών εφαρμογών γραμμής εντολών.
  • Το Chalk κάνει την έξοδο του CLI σας όμορφη. Εργασία με ροές:
  • mississipi όλα όσα σας λείπουν για τις ροές.
  • https://github.com/calvinmetcalf/streams-a-love-story
  • http://maxogden.com/node-streams.html
  • https://github.com/substack/stream-handbook
  • [Πώς οι ροές βοηθούν στην αύξηση της απόδοσης του Node.js](https://www.youtube.com/watch?v=QgEuZ52OZtU)
Σχόλια (9)

Χρησιμοποίησε την πηγή, Λουκά.

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

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

Σχόλια (2)