Кадом идеяҳои асосии техникӣ, ки дар асоси он Node.js сохта шудааст, чӣ буданд?
sobes.tech AI
Ҷавоб аз AI
Идеяҳои асосии Node.js:
-
Неблокирующий ввод/вывод (Async I/O): Истифодаи модели асинхронӣ барои амалиётҳои ввод/вывод ба ҷои моделҳои анъанавии блокирующий. Ин имкон медиҳад, ки Node.js ба самаранокӣ бо шумораи зиёди пайвастагиҳо кор кунад бе эҷоди як ҷараён барои ҳар як дархост, ки ин ба таври назаррас хароҷотҳоро барои гузариш байни контекст ва истифодаи хотира кам мекунад.
// Намунаи хондани файл ба таври асинхронӣ const fs = require('fs'); fs.readFile('file.txt', 'utf8', (err, data) => { if (err) { console.error(err); return; } console.log(data); }); console.log('Ин сатр пеш аз анҷоми хондани файл иҷро мешавад'); // Тасвир кардани рафтори неблокирующий -
Якҷояи архитектура: Давраи асосии ҳодисаҳо (Event Loop) Node.js дар як ҷараён барои коркарди дархостҳо кор мекунад. Неблокирующий ввод/вывод ба ин ҷараён имкон медиҳад, ки он дар интизории анҷоми амалҳо беном бошад ва дигар вазифаҳоро коркард кунад, ки ин суръатро дар боришоти баланд меафзояд.
-
Давраи ҳодисаҳо (Event Loop): Механизми асосӣ, ки амалиётҳои асинхронӣ-ро идора мекунад. Он пайваста интизори навбатро мебинад ва онҳоро барои коркард мефиристад, вақте ки стеки даъватҳо холӣ аст. Китобхонаи
libuvмасъул аст барои иҷрои давраи ҳодисаҳо ва ҳамкорӣ бо системаи оператсионӣ. -
JavaScript ҳамчун забони асосӣ: Истифодаи JavaScript ба таҳиягарон имкон медиҳад, ки як забонро дар фронтенд (дар браузер) ва дар бэкенд (дар сервер) истифода баранд, ки ин таҳияро содда мекунад ва такрори истифодаи кодиҳоро осон мекунад.
-
Системаи модулӣ (CommonJS): Node.js системаи модулӣ (аввал дар асоси CommonJS)ро амалӣ кард, ки ҳоло инчунин ҳамчун ES Modules дастгирӣ мешавад, ва имкон медиҳад, ки коди худро ба модулҳои хурд ва такроршаванда тақсим кунед, ки ин ба ташкил ва нигоҳдории коди кӯмак мекунад.
// export.js exports.myFunction = () => { console.log('Салом аз модул!'); }; // import.js const myModule = require('./export'); myModule.myFunction(); // Даъвати функсия аз модул воридшуда -
Мошини виртуалӣ V8: Истифодаи мошини виртуалӣ V8-и Google (ҳамон тавре ки дар Chrome истифода мешавад) барои иҷрои коди JavaScript. Ин суръатро баланд мекунад ва бо кӯшишҳои Google пайваста беҳбудиҳоро дар иҷроиш таъмин мекунад.
-
Тамаркуз ба барномаҳои шабакавии масштабшаванда: Node.js аввалин бор бо мақсади осон кардани таҳияи барномаҳои шабакавии баландсуръат ва масштабшаванда, ба монанди серверҳои веб ва API, таҳия шудааст.