Я читал этот вопрос на SO:
Framework против Toolkit vs. Library
где объясняется разница между фреймворком и библиотекой. Общее мнение заключается в том, что основное отличие заключается в Inversion of Control, поэтому у вас есть «горячие точки» в структуре, где вы присоединяете функциональность своего приложения (по сути, вы выбираете между наследованием / шаблоном / тяжеловесом или композицией / стратегией / облегчением для достижения этого).
Хорошо, теперь мне интересно, в чем же разница между фреймворком и контейнером? Я увидел следующее определение контейнера (Род Джонсона): «Контейнер - это фреймворк, в котором выполняется код / объекты приложения». И это то, что смутило меня. Я думал, что это более или менее определение любого фреймворка :) Я имею в виду, если вы используете IoC в качестве параметра, который делает разницу между библиотекой и фреймворком (иначе вы называете библиотеку, но фреймворк вызывает вас), то не значит ли это, что более или менее какие-либо рамки удовлетворяют приведенному выше определению контейнера?
Заранее спасибо.