Встречается на 14% собеседований по Java
В чем разница между фреймворком и библиотекой
Фреймворк предоставляет готовую архитектуру приложения, определяет поток управления и требует соблюдения своих правил. Разработчик встраивает свой код в фреймворк (инверсия управления).
Библиотека — это набор готовых функций/классов, которые разработчик вызывает по мере необходимости, сохраняя контроль над потоком выполнения.
Пример:
Spring (фреймворк) диктует структуру приложения, а Apache Commons (библиотека) предоставляет утилиты, которые можно использовать точечно.
java
// Использование библиотеки
List<String> list = Arrays.asList("a", "b", "c"); // java.util.Arrays
// Использование фреймворка
@SpringBootApplication // Spring диктует структуру
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}Фреймворк — "скелет" приложения, библиотека — "инструменты в ящике".
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы