1. Node.js nima?
Node.js — bu JavaScript runtime muhiti bo‘lib, V8 JavaScript dvigatelida ishlaydi va server tomonida JavaScript kodini bajarishga imkon beradi. U asinxron, event-driven va non-blocking arxitekturaga ega bo‘lib, yuqori samaradorlik va tezlik bilan ishlaydi.
2. Node.js ning asosiy xususiyatlari
- Asinxron va Event-driven: Callback funksiyalar orqali ma’lumotlarni bloklamasdan qayta ishlaydi.
- Non-blocking I/O: Input va output operatsiyalari asosiy threadni bloklamaydi.
- Single-threaded: Bitta thread asosida ishlaydi, lekin asynchronous event loop yordamida bir nechta ishlarni parallel bajarishi mumkin.
- NPM (Node Package Manager): Katta kutubxona ekotizimi mavjud.
- Cross-platform: Windows, MacOS va Linuxda ishlaydi.
3. Node.js ni o‘rnatish
Node.js ni o‘rnatish uchun rasmiy sayt ga kiring va operatsion tizimingizga mos versiyani yuklab oling.
O‘rnatilganligini tekshirish:
node -v # Node.js versiyasini tekshirish
npm -v # NPM versiyasini tekshirish
4. Birinchi node.js dasturingiz
app.js
faylini yaratib, quyidagi kodni yozing:
console.log("Hello, Node.js!");
Keyin terminalda quyidagi buyruqni bajaring:
node app.js
5. Node.js da modul tushunchasi
Node.js modullari orqali kodni qayta foydalanish va tartibli tuzilma yaratish mumkin.
Modul yaratish:
math.js
faylini yaratamiz:
function add(a, b) {
return a + b;
}
module.exports = { add };
Modulni import qilish:
const math = require("./math");
console.log(math.add(5, 3)); // 8
6. Node.js da asinxron kod va promislar
Node.js asinxron kod yozishga imkon beradi. Masalan, fs
modulidan foydalanib fayl o‘qish:
const fs = require("fs");
fs.readFile("example.txt", "utf8", (err, data) => {
if (err) {
console.error("Faylni o‘qishda xatolik: ", err);
return;
}
console.log("Fayl mazmuni:", data);
});
Promislar bilan asinxron kod
const fs = require("fs/promises");
async function readFile() {
try {
const data = await fs.readFile("example.txt", "utf8");
console.log("Fayl mazmuni:", data);
} catch (err) {
console.error("Xatolik yuz berdi:", err);
}
}
readFile();
7. Xulosa
Node.js — bu yuqori samaradorlikka ega, tezkor va skalab qilinadigan serverlarni yaratish uchun ajoyib texnologiya. Uning asinxron va event-driven arxitekturasi uni real vaqtda ishlovchi dasturlar uchun ideal qiladi. Siz endi Node.js asoslari bilan tanishdingiz va undan web server yaratish, modullarni ishlatish hamda asinxron kod yozishda foydalanishingiz mumkin!