InfoWorld, США

В Microsoft Research развивают технологию, призванную связать реляционную, объектную и XML-модель

Представители Microsoft Research сообщили, что технологию программирования Comega (цель ее разработки — навести своеобразные «мосты» между реляционными, объектными и XML-моделями) к настоящему времени загрузили уже свыше 7 тыс. пользователей.

В Microsoft называют Comega перспективным, ориентированным на данные языком программирования, предназначенным для связи полуструктурированных иерархических данных (XML), реляционных данных (SQL) и .Net CTS (Common Type System). Кроме того, Comega расширяет язык C# конструкциями, предназначенными для параллельного программирования.

Исторически сложилось так, что разработчики вынуждены иметь дело с различными моделями данных, которые включают в себя SQL для баз данных, полуструктурированные данные в XML или HTML и объектно-ориентированные конструкции в таком языке языке программирования, как C#.

Проект ставит перед собой две цели: усиление поддержки XML и упрощение создания параллельного кода для распределенных приложений.

Пользователи Microsoft .Net весьма неплохо отзываются о Comega, хотя считают, что эта технология требует дальнейшего совершенствования.

Как заметил президент консалтинговой фирмы Nexlen Эрни Бут, в связи с Comega внимание пользователей может привлечь вопрос о необходимости писать дублирующийся код на основе технологии ActiveX Data Objects (ADO) .Net.

«ADO .Net — прекрасная технология, но приходится снова и снова писать один и тот же код, а Comega предлагает верный способ поместить запросы SQL в кодовую базу и избавиться от повторяющегося кода», — считает Бут.

Коммерческие перспективы Comega, пока не ясны. «Наша главная цель как ученых — опробовать новые и оригинальные решения», — подчеркивают в Microsoft Research.

В конце нынешнего или в начале 2006 года Comega планируется модернизировать. Как предполагается, в новую версию будет добавлена поддержка обобщений, которые позволят разработчикам устанавливать параметры классов по типу, что ускоряет процесс создания кода.