Node.js gumantung marang sawetara design pattern sing cocog karo sistem modul, model async, lan streaming I/O-ne. Sing paling umum lan kudu dingerteni saben developer backend:
Node.js gumantung marang sawetara design pattern sing cocog karo sistem modul, model async, lan streaming I/O-ne. Sing paling umum lan kudu dingerteni saben developer backend:
module.exports / export, njaga internal tetep privat. Pondhasi organisasi kode ing Node.// db.js — saben `require("./db")` entuk pool sing padha iki (singleton liwat module cache).
const pool = createPool(process.env.DATABASE_URL);
module.exports = pool;
function createLogger(kind) {
return kind === "json" ? new JsonLogger() : new TextLogger();
}
EventEmitter, streams, lan umume modul core nggunakake iki.const { EventEmitter } = require("node:events");
const bus = new EventEmitter();
bus.on("order:paid", (o) => sendReceipt(o));
bus.emit("order:paid", order);
(ctx, next), dipopulerake dening Express/Koa. Apik kanggo urusan lintas-sektoral (auth, logging, validasi).app.use((req, res, next) => { req.startedAt = Date.now(); next(); });
const { pipeline } = require("node:stream/promises");
await pipeline(fs.createReadStream("in"), gzip(), fs.createWriteStream("out.gz"));
| Kabutuhan | Pattern |
|---|---|
| Siji resource bareng | Singleton (module cache) |
Nggawe objek, ndhelikake new | Factory |
| Nanggapi event async | Observer / EventEmitter |
| Logika request lintas-sektoral | Middleware |
| Ngolah data gedhe kanthi aman | Streams / pipeline |
| Dependensi testable, decoupled | Dependency Injection |
Pattern iku kosakata bareng: ngomong "config iku singleton sing di-cache modul" utawa "auth iku middleware" nyampekake sawijining desain mung nganggo sawetara tembung. Core Node dhewe (EventEmitter, streams, sistem modul) dibangun saka iki, dadi ngenali iku mbantu sampeyan maca framework lan nyusun service sampeyan dhewe. Pewawancara nggunakake pitakon iki kanggo mriksa yen sampeyan ora mung nyambung callback kanthi ad hoc, nanging njupuk pattern sing cocog — lan ngerti trade-off-e, kaya singleton sing ndadekake state global luwih angel di-test.
Pustaka pitakon wawancara IT kanthi jawaban rinci — saka Junior nganti Senior.
Nyumbang