Конгер Д.
Физика для разработчиков компьютерных игр
стр. 23

бинарном уровне; в программах на C++ объекты СОМ могут использоваться как обычные объекты.

СОМ-объекты компонуются динамически во время выполнения программ. Это значит, что, в идеале, СОМ-объекты можно заменять в программах на новые объекты без необходимости перекомпилировать программу. Это полезно, если мы хотим обновить распространенную и широко используемую программу или большую систему.

СОМ-объекты обладают достаточными возможностями, чтобы эта операция была эффективной.

□    У каждого COM-объекта и интерфейса есть уникальный 128-бито-вый идентификационный номер, который называется глобально уникальным идентификатором (GUID - Globally Unique IDenti-fier). Созданная Microsoft программа GUIDEN.EXE генерирует эти идентификаторы, которые будут уникальными; скорее всего, никакие два COM-объекта или интерфейса, созданные кем угодно, где угодно и когда угодно, не будут иметь одинаковых идентификаторов.

□    Обновленные версии COM-объектов должны поддерживать интерфейсы предыдущих версий. При этом программы, в которых используется этот COM-объект, будут продолжать работать без перекомпиляции, даже если внутреннее содержимое объекта полностью изменилось.

□    СОМ-объекты содержат счетчик, отслеживающий количество активных ссылок на эти объекты. Если это количество равно

О, ресурсы, выделенные объекту, освобождаются, и объект уничтожается.

СОМ является основой ActiveX, OLE и, что важнее всего для нас, DirectX.

COM, ActiveX и .NET

Сначала DirectX не был API, основанным на COM. Microsoft добавила СОМ к DirectX, купив этот API у создавшей его компании Reality Labs. В результате присутствие СОМ в DirectX не слишком навязчиво. Да, СОМ нужно использовать для выделения и освобождения основных компонентов DirectX. Но кроме этого, больше возиться с СОМ не нужно. Не обязательно быть знатоком СОМ и разбираться в его тонкостях, чтобы использовать в своих программах DirectX.

Вы наверняка слышали о .NET - инициативе компании Microsoft. Все, что делает Microsoft, перетаскивается под вывеску .NET. Это относится и к DirectX. Microsoft уже предоставила доступ к DirectX для программ .NET. Интерфейс .NET использовать проще, чем интерфейс СОМ. Однако использование интерфейса .NET связано с некоторыми накладными расходами. Снижение скорости работы программ при использовании .NET составит 2-5 %. Кроме того, может увеличиться размер программ. Вам решать, стоят ли увеличение размера и падение скорости работы программ облегчения их разработки.

Новости
Финальный сезон The Walking Dead закончится в декабре
Создатели интерактивной драмы The Walking Dead из Telltale представили расписание выхода всех эпизодов финального сезона проекта.
Пользователи «ВКонтакте» могут официально поддержать Альянс или Орду
С 15 и до 29 августа каждый пользователь социальной сети может официально поддержать одну из двух противоборствующих сторон: Альянс или Орду.