Node.js kursi
JavaScript bilan backend. Event loop, modullar, npm va server-side dasturlash.
O'rta · 27 ta dars · ~5 hafta
Mavzular: Node.js asoslari, Modullar, NPM, File System, HTTP Server, Streams, Events, Child Process, Cluster, Debugging
Kirish va Asoslar
- Node.js nima? Brauzer JavaScript dan farqi, qayerda ishlatiladi
- O'rnatish — Node.js, nvm, versiyalarni boshqarish
- Node.js qanday ishlaydi — V8 Engine, libuv, C++ bindings
- CommonJS va ES Modules — require, import, export, farqlari
- package.json va npm — scripts, dependencies, npx
Event Loop
- Event Loop nima — brauzer dan farqi, nima uchun muhim
- Event Loop fazalari — timers, poll, check, close
- setImmediate vs setTimeout vs process.nextTick — farqlari
- Blocking vs Non-blocking — nima uchun xavfli
- Microtask va Macrotask — qaysi birinchi ishlaydi
Core Modullar
- path va os — join, resolve, dirname, platform, cpus
- fs — readFile, writeFile, mkdir, unlink
- fs/promises — async/await bilan fayl tizimi
- fs Stream — createReadStream, createWriteStream, katta fayllar
- crypto — hash, hmac, randomBytes
- EventEmitter — on, emit, once, off, custom event
Stream va Buffer
- Stream nima — Readable, Writable, Duplex, Transform
- pipe, pipeline — stream larni ulash, Backpressure
- Buffer — alloc, from, concat, encoding
Process
- process — argv, env, exit, uncaughtException, SIGINT
- child_process — exec, spawn, fork
- worker_threads va cluster — CPU intensive vazifalar
Amaliy
- Memory Leak — nima, qanday topiladi
- PM2 — process boshqarish, cluster mode, monitoring
- HTTP Server — http moduli, request, response
- Debugging — node --inspect, Chrome DevTools, breakpoint
- Environment Variables — dotenv, process.env, konfiguratsiya