к тому, чтобы сделать работу с объектами как можно более простой и незаметной для пользователя.

Долгое время объектная технология оставалась чем-то вроде тайной религии программистов. Однако структура Web имеет естественную предрасположенность к технологии такого типа. По мере того как в течение последних полутора лет развивались Web и объектно-ориентированный язык Java, среди конечных пользователей постепенно укреплялось представление о том, что Web - это набор дискретных компонентов, взаимодействие между которыми осуществляется через интрасети и Internet. И нужно лишь, чтобы это взаимодействие происходило более гладко.

Новым шагом на пути упрощения процессов взаимодействия между объектами стала встреча Рабочей группы по управлению объектами (Object Management Group, OMG), в ходе которой была сформирована Целевая группа по службам Internet (Internet Facilities Task Force). Ее задачей является разработка принципов построения интерфейсов на языке IDL (Interface Definition Language - язык описания интерфейса) для таких уже существующих в Internet протоколов, как FTP (File Transfer Protocol - протокол передачи файлов) и SMTP (Simple Mail Transfer Protocol - простой протокол электронной почты).

Язык IDL - это стандарт, принятый группой OMG для определения границ объекта. Благодаря IDL другие объекты получают

информацию о возможностях данного объекта и способах взаимодействия с ним. Как считает президент группы OMG Крис Стоун, IDL-интерфейсы обеспечивают разработчикам, пользующимся С/С++, Java и другими объектно-ориентированными языками, надежный способ взаимодействия с протоколами FTP и SMTP. Стоун ожидает, что первоначальные варианты спецификаций появятся уже в текущем году.

Наиболее фундаментальной на сегодняшний день технологией управления распределенными объектами считается ORB (Object Request Broker - посредник объектных запросов), которая, попросту говоря, служит для установления соединений типа "клиент-сервер" между двумя объектами. Ни сами объекты, ни программисты, создающие их, ни конечные пользователи, которые работают с объектами, могут ничего не знать о существовании в сети других объектов, поскольку технология ORB как раз и создана для обеспечения взаимодействия между различными объектами в сети.

В течение последних нескольких месяцев компании Netscape Communications и Oracle объявили о создании новых архитектур работы с приложениями, в которых посредники объектных запросов играют решающую роль во взаимодействии объектов и управлении ими в Internet. Эти архитектуры получили названия ONE (Open Network Environment - открытая сетевая среда) и NCA (Network Computing Architecture - архитектура сетевых вычислений).

Единая архитектура программ-постредников объектных запросов (Common Object Request Broker Architecture - CORBA) позволяет программам, созданным в соответствии с этой технологией, совместно работать в сети на основе протокола Internet Inter-ORB Protocol (IIOP - протокол взаимодействия программ-посредников в Internet) поверх протокола TCP/IP. Однако у технологии CORBA есть серьезный соперник - распределенная модель компонентных объектов (DCOM), предложенная компанией Microsoft и имеющая собственный протокол обмена. Правда, в настоящее время эта модель реализована лишь для 32-разрядных операционных систем Microsoft. Архитектура ActiveX компании Microsoft, представляющая собой набор спецификаций для построения компонентов, использует DCOM для организации взаимодействия в сети.

"Технологии распределенных объектов явно не хватало единого протокола и желания разработчиков создать его; они не были уверены, что создание программ в соответствии с таким протоколом не окажется напрасным трудом, - говорит Йенс Кристиансен, руководитель отдела технологий компании Visigenic Software. - Но компания Netscape изменила эту ситуацию. Теперь появятся миллионы Web-браузеров и серверов, поддерживающих протокол IIOP, что превратит распределенные объекты в очень жизнеспособную технологию".

Сетевая среда ONE, анонсированная летом прошлого года, представляет собой набор спецификаций для разработки приложений и размещения их в сети. Она базируется на реализованном компанией Visigenic протоколе IIOP, который является центральным элементом созданной по технологии CORBA программы-посредника ORB. Netscape намеревается включить программу-посредник в последующие выпуски своих браузеров и серверов.

Разработчики, использующие язык Java, смогут, например, создавать и использовать готовые программы-клиенты, которые будут в нужный момент вызывать программу-посредник. "Мне представляется такая идеология функционирования Internet: размещенные в сети программы-компоненты в процессе своей работы обращаются, по мере необходимости, к различным сетевым службам, - говорит Дон Депальма, старший аналитик исследовательской компании Forrester Research. - Главная цель инициатив с протоколом IIOP состоит в том, чтобы создать стандартные интерфейсы для программных компонентов и сетевых служб, в том числе старых приложений, которые можно снабдить объектной оболочкой".

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


Web глазами группы OMG

Будущее принадлежит Web, а Web - это объекты. Именно такую мысль всячески старается проводить Рабочая группа по управлению объектами (OMG) во главе со своим президентом Крисом Стоуном. Ведущий редактор журнала Network World Джон Кокс побеседовал с г-ном Стоуном о структуре Web.

Почему Вы усматриваете такую тесную связь между Web и распределенными объектами?

Сегодня Web на 80-90 % состоит из документов, созданных в формате HTML. Никто сейчас не разрабатывает распределенные приложения в Web в виде платформы. Чтобы добиться этого, необходимо усовершенствовать сегодняшние протоколы Web, например используя вместо протокола HTTP протокол Internet Inter-ORB Protocol на базе технологии CORBA. Соедините его с языком Java - и вы получите очень мощное средство разработки приложений.

Сейчас такие компании, как Netscape, Oracle и Lotus, встраивают технологию CORBA и протокол IIOP в свои продукты и архитектуры работы с приложениями. Почему?

Это позволяет создать как стандартный интерфейс, для которого каждый может разрабатывать свои программы, так и стандартный протокол взаимодействия браузера с сервером. Посредники ORB становятся нижним и средним уровнями инфраструктуры сети. Microsoft хочет, чтобы эта инфраструктура базировалась на DCOM (Distributed Common Object Model) и технологии ActiveX. Наша работа состоит в том, чтобы стандартизировать инфраструктуру Web.

Воспринимают ли пользователи идею посредников ORB как инфраструктуры для Web-приложений?

В последние полгода стали появляться интерфейсы, основанные на Web-технологиях или на электронных формах, а также приложения для интрасетей, которые используют протокол IIOP и технологию CORBA. Объявления о новых технологиях, сделанные компаниями Netscape, Oracle и другими, заставили многих пользователей внимательно отнестись к этим новшествам. Мы видим также, что все больше создателей средств разработки используют протокол IIOP и технологию CORBA.

Вместе с тем, есть уже довольно много корпоративных пользователей, применяющих технологию ActiveX и модель DCOM компании Microsoft. Эти решения пользуются также поддержкой третьих фирм. Я совершенно уверен, что применение технологии ActiveX не выйдет за рамки настольных систем. Кроме ПК, работающих под Windows, существуют и такие устройства, как телевизионные приставки, встроенные системы, системы реального времени. Для их работы нужны такие технологии, как CORBA, IIOP и Java. Но ActiveX все же является частичкой общей мозаики развития, и именно в таком качестве эта технология рассматривается в наших планах интеграции CORBA и COM/DCOM.


Как сочетать объекты с Internet/Web

Президент OMG Крис Стоун считает, что главными задачами OMG должны стать следующие:

  • Согласование Java-приложений с объектами, созданными по технологии CORBA.
  • Интеграция CORBA и DCOM.
  • Включение поддержки протокола Secure Sockets Layer в архитектуру CORBA.
  • Разработка принципов построения интерфейсов, создаваемых на языке IDL (Interface Definition Language), для таких протоколов, как FTP и SMTP.
  • Поделитесь материалом с коллегами и друзьями