Співбесіда Node.js — 50 основних питань

By

Якщо ви готуєтесь до співбесіди на позицію Node.js розробника, важливо не лише знати синтаксис JavaScript, але й розуміти особливості серверного середовища, асинхронність та роботу з потоками. Цей список з 50 основних питань і коротких відповідей допоможе швидко освіжити знання та підготуватись до розмови з роботодавцем.

1. Що таке Node.js?
Node.js — середовище виконання JavaScript на сервері, побудоване на движку V8. Дозволяє писати серверний JS та будувати високопродуктивні застосунки.

2. Чим Node.js відрізняється від браузерного JS?
Node.js має доступ до файлової системи, мережі та ОС, тоді як браузерний JS обмежений клієнтським середовищем.

3. Що таке Event Loop?
Event Loop обробляє асинхронні операції без блокування головного потоку, дозволяючи ефективно обробляти сотні одночасних запитів.

4. Що таке Callback?
Callback — функція, яка виконується після завершення асинхронної операції.

5. Що таке Promise?
Promise — об’єкт, що представляє результат асинхронної операції (pending, fulfilled, rejected).

6. Що таке async/await?
async/await — синтаксичний цукор для промісів. async позначає асинхронну функцію, await очікує результат промісу.

7. Як обробляти помилки у Node.js?
Через try/catch для async/await або .catch() для промісів. У старих callback-функціях помилки передаються першим аргументом.

8. Що таке NPM?
Менеджер пакетів Node.js, який дозволяє встановлювати бібліотеки та керувати залежностями.

9. Що таке package.json?
Файл з інформацією про проект: залежності, скрипти, версії Node.js та метадані.

10. Як встановити пакет через NPM?
Команда npm install <package_name> встановлює пакет і додає його в залежності.

11. Що таке CommonJS і ES Modules?
CommonJS (require) — старий стандарт, ES Modules (import/export) — сучасний стандарт модулів.

12. Як працює require()?
Завантажує модуль, кешує його і повертає об’єкт для використання.

13. Що таке process в Node.js?
Глобальний об’єкт з інформацією про поточний процес: аргументи командного рядка, змінні середовища, вихідні потоки.

14. Як зчитати аргументи командного рядка?
Через process.argv, де перші два елементи — шлях до Node та файлу.

15. Що таке Buffer?
Об’єкт для роботи з двійковими даними (файли, мережа).

16. Як читати файли у Node.js?
Через модуль fs (fs.readFile, fs.readFileSync) або потоки (fs.createReadStream).

17. Що таке Stream?
Об’єкт для обробки великих даних по частинах: readable, writable, duplex, transform.

18. Що таке EventEmitter?
Клас для об’єктів, які можуть генерувати події та слухачі, що на них реагують.

19. Як створити простий HTTP-сервер?
Через модуль http:

const http = require('http');
const server = http.createServer((req, res) => {
res.end('Hello Node.js');
});
server.listen(3000);

20. Як обробляти маршрути без фреймворку?
Через перевірку req.url та req.method та відповідь відповідними даними.

21. Що таке middleware у Node.js?
Функції, що обробляють запити та відповіді у порядку виклику (часто в Express).

22. Що таке Express.js?
Популярний фреймворк для Node.js, який спрощує роботу з сервером та маршрутами.

23. Як встановити Express?
Команда npm install express.

24. Що таке req і res в Express?
req — об’єкт запиту, res — об’єкт відповіді, через який надсилаються дані клієнту.

25. Що таке JSON в Node.js?
Формат обміну даними. Використовується JSON.stringify для перетворення об’єктів у рядки і JSON.parse для зворотного перетворення.

26. Що таке CORS?
Cross-Origin Resource Sharing — політика, що дозволяє або забороняє доступ до ресурсів з інших доменів.

27. Як встановити CORS у Express?
Через пакет cors: npm install cors та app.use(cors()).

28. Що таке npm scripts?
Команди у package.json, які можна запускати через npm run <script>.

29. Як працює require.cache?
Node.js кешує модулі, щоб повторний require не перевантажував файл.

30. Що таке cluster у Node.js?
Модуль для запуску кількох процесів Node.js для використання всіх ядер CPU.

31. Як працює process.nextTick()?
Виконує функцію на наступному циклі Event Loop, перед асинхронними операціями I/O.

32. Що таке setImmediate()?
Виконує функцію на наступній фазі Event Loop після I/O.

33. Що таке global в Node.js?
Глобальний об’єкт, аналог window у браузері, доступний у всьому коді.

34. Як відправити POST-запит через Node.js?
Через модуль http/https або пакети типу axios чи node-fetch.

35. Що таке npm install –save-dev?
Встановлює пакет як залежність для розробки (devDependencies).

36. Що таке environment variables?
Змінні середовища, які використовують для конфігурацій, паролів, портів. Доступні через process.env.

37. Що таке require(‘module’).builtinModules?
Список всіх вбудованих модулів Node.js.

38. Як обробляти uncaughtException?
Через process.on('uncaughtException', (err) => {...}), але краще уникати таких помилок.

39. Що таке readline у Node.js?
Модуль для зчитування вводу користувача з командного рядка.

40. Що таке globalThis?
Стандартний глобальний об’єкт у будь-якому середовищі JS.

41. Як створити простий TCP-сервер?
Через модуль net:

const net = require('net');
const server = net.createServer(socket => { socket.write('Hello'); });
server.listen(3000);

42. Що таке fs.promises?
API для асинхронної роботи з файлами через проміси.

43. Що таке REPL?
Read-Eval-Print Loop — інтерактивне середовище Node.js, яке дозволяє тестувати код на льоту.

44. Що таке npm install -g?
Встановлює пакет глобально, доступний у всій системі.

45. Що таке cluster.fork()?
Створює новий робочий процес у кластері для масштабування Node.js додатку.

46. Що таке process.exit()?
Завершує Node.js процес з кодом виходу.

47. Як працюють модулі third-party?
Встановлюються через NPM і підключаються через require/import для додаткової функціональності.

48. Що таке event-driven architecture?
Архітектура, де логіка застосунку базується на подіях та їх обробниках, характерна для Node.js.

49. Що таке non-blocking I/O?
Асинхронна операція, яка не зупиняє виконання коду під час очікування результату.

50. Що таке npm audit?
Команда для перевірки залежностей проєкту на вразливості та безпеку.

Ці 50 питань охоплюють ключові теми, які найчастіше задають на співбесідах для Node.js розробників. Навіть якщо ви не знаєте відповіді на кожне питання досконало, важливо розуміти принципи роботи Node.js: асинхронність, Event Loop, роботу з потоками та модулі.

Регулярна практика, читання документації та невеликі експерименти з кодом допоможуть не лише пройти співбесіду, але й стати впевненим Node.js розробником.

Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
Click outside to hide the comparison bar
Compare