Встречается на собеседованиях • сегодня

В чем разница между фреймворком и библиотекой

Фреймворк задает структуру приложения и управляет потоком выполнения, требуя от разработчика следования определенным правилам. Библиотека же предоставляет набор функций/методов, которые разработчик может использовать по своему усмотрению, не меняя архитектуру приложения.

Пример:

javascript
// Библиотека (например, lodash)
const _ = require('lodash');
const result = _.capitalize('hello'); // Просто вызываем нужную функцию

// Фреймворк (например, Express)
const express = require('express');
const app = express(); // Создаем экземпляр фреймворка
app.get('/', (req, res) => { // Следуем структуре фреймворка
  res.send('Hello World');
});

Фреймворк диктует "как", библиотека предоставляет "что". Во фреймворке код вызывает ваш код (инверсия управления), в библиотеке - ваш код вызывает библиотеку.

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы