Майкл Мюллер

 

Корпорации Microsoft, готовящейся к передаче на бета-тестирование первых частей COM+ (Component Object Model+), предстоит решить непростую задачу: убедить разработчиков, что эта новая объектная модель лучше и традиционных методов программирования, и перспективных, открываемых технологией Enterprise JavaBeans.

Microsoft планирует приступить к бета-тестированию COM+ нынешним летом. В состав ПО поддержки этой модели войдет ряд новых служб и средств интеграции с Microsoft Transaction Server (MTS), которые, как утверждают представители корпорации, упростят построение распределенных приложений. Однако пока не ясно, окажется ли этих усовершенствований достаточно, чтобы разработчики согласились потратить силы на изучение новой среды: в основу COM+ положена та же модель программирования, что использована в MTS.

Обслуживание компонентов

“Я привык писать процедурами - этому учат всех, кто начинает работать на Си и Си++. А с COM+ все иначе, - говорит Крейг Ангдера, системный программист из фирмы GMAC-RCF (Блумингтон, шт. Миннесота). - Чем больше узнаешь об этой новой системе, тем больше убеждаешься в том, что Microsoft, возможно, придумала более удачный способ программирования. Однако нужно время, чтобы люди освоились с новинкой и решили, что лучше подходит для решения их задач”.

По всей вероятности, Microsoft выпустит бета-версию COM+ 1.0 одновременно со второй бета-версией Windows NT 5.0 - к концу II квартала. Согласно некоторым сведениям, бета-версия COM+ может быть дополнена и инструментальным комплектом разработчика.

Microsoft планирует подробно рассказать как о COM+, так и об NT 5.0 на своей конференции разработчиков TechEd Developers Conference, которая пройдет в Новом Орлеане в начале июня.

Корпорация предлагает COM+ на роль архитектуры компонентных служб, предоставляющих механизмы работы с событиями, очередями, обеспечения безопасности и балансировки нагрузки, в комплекте с основанной на атрибутах моделью программирования. Все перечисленные службы активизируются “перехватчиками” (interceptors), которые следят за работой компонентов и определяют, когда и какой сервис им требуется.

Еще одна служба, добавленная в COM+, предназначена для организации работы с событиями. COM+ не требует строгого связывания “события” и “приемника”: она опирается на метафоры “публикации” и “подписки”, благодаря чему любое событие может быть принято сразу многим приемниками, причем каждый из них может обрабатывать его своим особым образом.

Например, компонент слежения за инвентарем может выдавать в виде специальных событий предупреждения об опасном снижении запасов на складе. Эту информацию смогли бы затем использовать компоненты, ответственные за генерацию повторных заказов и финансирование, чтобы организовать пополнение склада и оплату поставок.

Описанные службы COM+ являются зеркальным отражением тех, над которыми трудятся разработчики спецификации EJB (Enterprise JavaBean), включая специалистов фирм Sun Microsystems, IBM и Oracle. Это и не удивительно: они так же ищут более простых способов построения распределенных приложений, ориентированных на обработку транзакций.

Однако руководство Microsoft не сомневается, что COM+ и MTS обладают несомненными преимуществами перед многоплатформными Java-компонентами, создаваемыми множеством различных производителей.

“MTS представляет собой реальный продукт, существующий уже во второй версии, и по своим достоинствам превосходит даже то, что пока только заложено в спецификацию EJB, но еще не реализовано, - утверждает Джо Малоуни, менеджер Microsoft по продукту в группе маркетинга платформ. - А COM+ позволяет решить и еще целый ряд важных для разработчиков вопросов”.

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

Поскольку и COM+, и EJB находятся лишь на ранних стадиях развития, неясно, какая из этих технологий одержит верх.

“Конечно, сегодня Microsoft выпускает более совершенное ПО, чем первые продукты, основанные на EJB, - считает вице-президент исследовательской фирмы Giga Information Group (Гейтерсберг, шт. Мэриленд) Майк Гилпин. - Однако системы уровня предприятия, которые должны появиться в течение этого года, будут превосходить по способности масштабироваться то, что может предложить Microsoft. Таким образом, гонка еще не закончена”.

Кроме того, создателям COM+ и EJB только предстоит завоевать симпатии разработчиков, и это в условиях, когда многие корпоративные программисты полностью поглощены более насущными проблемами, такими, как подготовка к вступлению в 2000 г.

“Производителям любой новой объектной модели, будь то COM+ или EJB, придется прибегать к весьма изощренным уловкам, чтобы побудить разработчиков к ее изучению, в то время как все их силы уходят на рутинную работу над совершенно иными проблемами”, - полагает Ричард Уоррен, вице-президент по информационным службам фирмы Judd’s (Страсбург, шт. Виргиния), специализирующейся на выпуске печатной продукции. Уоррен считает также, что с тех пор, как его разработчики освоили MTS, они стали тратить на программирование систем обработки транзакций значительно меньше времени, чем при использовании прежних методов, а это сказалось и на общем повышении производительности труда. “Я могу позволить себе расходы на приобретение более производительных машин, но не дополнительные затраты времени на программирование”, - добавил он.