Streams
@CrabDude ci sta già lavorando.
Dal 5/5/2015.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
- Break the below into coherent sections
- Explain unix pipes and their corollary with node.js streams (explaining the concept of node.js streams as well)
- Explain the need for streams (memory pressure, decreased latency, CPU amortization & convenience)
- Lead with
.pipeexamples- Emphasize that source streams can be piped to multiple destination streams
- Show example of piping from multiple source streams (
readable.pipe(writable, {end: false}))
- Cover the basics: .read(), .write(), .pause(), .resume & events: 'data', 'close', 'error'
- Mention briefly push vs pull-based streams and how Streams 2/3 uses pull streams
- Mention how back-pressure is handled
- Briefly explain buffers, link to a reference (docs or blog post or guide), and show
String(buffer) - Show 2 simple as possible examples of consuming (read: piping) each of the 4 stream types. You should use the most common examples e.g., req/res, through, fs read/write.
- Provide a common use case (e.g., A common type of duplex stream would be a WebSocket).
- Strongly recommend working through the stream-adventure nodeschool.io workshop and provide a screen shot of the stream-adventure exercise selection menu.
Advanced section:
- Explain object mode briefly, provide minimalist example and provide link to a more comprehensive explanation
- Provide code samples on how to create your own streams (i.e., .push, _read, _write & _transform) and additional links
- Show of JSON streaming example & explain !!LOUDLY!! how JSON.parse/stringify are the #1 cause of CPU blocking in node.js
The stream handbook is nice, but it's too verbose and needs more structure. In general the examples are good, so use them.
What success looks like: Succinctness and clarity. Less is more.
Reference Wikis: Authentication & Authorization, Setup
Open separate issues for required links to community sources if you're having trouble finding any.
Please assign to yourself before working on this.
/cc @NinjaSudo @philster @azoff @DiyahM
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 74
- Fork
- 18
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di codepath/nodejs_guides
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 20/100
codepath/nodejs_guides#21 · 1 commento ·
-
enhancement
codepath/nodejs_guides#19 · 1 commento · 1 assegnatario ·
-
help wanted
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
codepath/nodejs_guides#18 · 3 commenti ·
-
Design Patterns Apertahelp wanted
codepath/nodejs_guides#16 · 1 assegnatario ·
-
JavaScript: Inheritance Apertahelp wanted
codepath/nodejs_guides#14 · 1 assegnatario ·