Performance: Stream types (Readable, Writable, Transform, Duplex)
MEDIUM IMPACT
This concept affects how efficiently data flows through a Node.js application, impacting memory usage and responsiveness during I/O operations.
const fs = require('fs'); const readable = fs.createReadStream('largefile.txt'); readable.on('data', chunk => console.log(chunk.toString()));
const fs = require('fs'); const data = fs.readFileSync('largefile.txt'); console.log(data.toString());
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Synchronous file read | N/A | N/A | N/A | [X] Bad |
| Readable stream with chunked async read | N/A | N/A | N/A | [OK] Good |
| Separate readable and writable streams for transform | N/A | N/A | N/A | [!] OK |
| Transform stream for inline data modification | N/A | N/A | N/A | [OK] Good |
| Separate readable and writable streams for bidirectional | N/A | N/A | N/A | [!] OK |
| Duplex stream for bidirectional data | N/A | N/A | N/A | [OK] Good |