Здравствуйте, snaphold, Вы писали:
S>А скажите для несведующих, что имеется ввиду под фразой
VD>>А вот в С++ компонентности не было, нет и, похоже, уже не будет.
То что сказано. Если это непонятно, то наверно стоит начать с общих сведений о компонентах и КООП:
http://en.wikipedia.org/wiki/Component-oriented_programming
С++ не имеет встроенных средств поддержки КООП. В нем нет таких понятий как:
1. Отчуждаемые модули которые можно передавать в бинарном виде и из которых можно создавать экзепляры классов (компонентов).
2. Системы динамического создания экзепляров. Тип создаваемого объекта должен быть известен заранее.
3. Метаинформации позволяющей выявлять наличие компонентов и анализировать их свойства (возможности).
Для решения этих проблем были созданы разные технологии. Самая известная из них — это MS COM.
S>и под этой
VD>>Когда же язык и его рантайм исходно поддерживают компонентность, то костыли не требуются. Любой класс является компонентом и может быть использован в рантайме без дополнительных приседаний.
Опять же то что написано. Все перечисленные возможности уже встроены в язык и его рантайм. Скажем в дотнете и яве можно:
1. Размещать код компонентов в отдельных модулях (сорки дотнета и jar-архивы явы и class-файлы).
2. Экземпляры типом можно создавать на основании их текстовых имен или другой информаци.
3. О каждом типе и модуле можно получить исчерпывающую информацию даже если нет их исходников.