Клеменс Шиперски главным образом определяет разницу между библиотекой и компонентом по отношению к пользователю.
Цитата:
Most objects have no meaning to clients who are not programmers. Class libraries and frameworks are typical developer tools and require highly trained and qualified programmers for their proper use. It is appropriate that component construction is left to persons of such standing. However, for components to be successful, composition and integration – that is, component assembly must not generally be confined to such a relatively small elite group.
Цитата:
Большинство объектов не имеют значения для клиентов, не являющихся программистами. Библиотеки классов и фреймворки являются типичными инструментами разработчика, и для их надлежащего использования требуются хорошо обученные и квалифицированные программисты. Уместно, чтобы строительство компонентов было оставлено лицам с таким положением. Однако для того, чтобы компоненты были успешными, состав и интеграция, то есть сборка компонентов, как правило, не должны ограничиваться такой относительно небольшой элитной группой.
Szyperski C., Gruntz D., Murer S. Component software: beyond object-oriented programming. 2nd ed. London: Addison-Wesley, 2003. 589 p.