Ответ
Фреймворк задает структуру приложения и контролирует поток выполнения, требуя от разработчика следования его правилам (инверсия управления). Библиотека — это набор готовых функций/классов, которые разработчик вызывает по мере необходимости.
Пример:
- Библиотека (Retrofit):
val retrofit = Retrofit.Builder().baseUrl("https://api.example.com").build()
val service = retrofit.create(ApiService::class.java) // Вызов по требованию
- Фреймворк (Android SDK):
Жизненный цикл Activity (onCreate(),onStart()) управляется системой, а не разработчиком.
👉 Фреймворк — «скелет», библиотека — «инструмент в руках».