Интегрированная среда разработки браузера f12. Универсальные интегрированные среды разработки

    Программный комплекс, предназначенный для продуктивной разработки прикладных систем и состоящий: из редакторов исходных текстов и ресурсов; из компилятора; из отладчика; из средств управления проектом и оперативной помощи; + включающий… … Финансовый словарь

    - (Интегрированная) среда разработки программного обеспечения (англ. IDE, Integrated development environment) система программных средств, используемая программистами для разработки программного обеспечения. Обычно среда разработки включает в себя… … Википедия

    среда разработки ПО - 3.62 среда разработки ПО: Интегрированная система, включающая в себя аппаратные средства, ПО, программно аппаратные средства, процедуры и документы, необходимые для разработки ПО. Источник: ГОСТ Р 51904 2002: Программное обеспечение встроенных… …

    У этого термина существуют и другие значения, см. Eclipse. Eclipse … Википедия

    У этого термина существуют и другие значения, см. Delphi. Embarcadero Delphi … Википедия

    среда - 3.3.3 среда (environment): Связь между синтаксисом и семантикой. Примечание В контексте настоящего стандарта объект environment привязывает к объекту generic variable (синтаксису) соответствующее ему значение (семантику), представленное объектом… … Словарь-справочник терминов нормативно-технической документации

    среда верификации/тестирования ПО - 3.63 среда верификации/тестирования ПО: Интегрированная система, включающая в себя аппаратные средства, ПО, программно аппаратные средства, процедуры и документы, необходимые для выполнения верификации/тестирования ПО. Элементами данной среды… … Словарь-справочник терминов нормативно-технической документации

    У этого термина существуют и другие значения, см. Turbo. Turbo Pascal Среда разработки Turbo Pascal 7.1 Тип … Википедия

    Эта статья предлагается к удалению. Пояснение причин и соответствующее обсуждение вы можете найти на странице Википедия:К удалению/28 сентября 2012. Пока процесс обсуждения не завершён, статью мож … Википедия

Книги

  • , И. И. Попов , О. Л. Голицына , Рассмотрены основные принципы программирования на языках высокого уровня: основные управляющие структуры программирования; стандартные типы данных; структуры данных; процедуры и функции;… Категория: Пособия и справочники Серия: Лазерная техника и технология Издатель: Форум , Производитель: Форум ,
  • Программирование на языках высокого уровня: Учебное пособие , Голицына О.Л. , Рассмотрены основные принципы программирования на языках высокого уровня: основные управляющие структуры программирования; стандартные типы данных; структуры данных; процедуры и функции;… Категория:

Простейший он потому, что не предоставляет таких удобств, как контекстные подсказки по типу intelliSence , в нем нет полноценного отладчика, нет профайлера и других полезных инструментов. Возможности текстового редактора весьма и весьма скромные. Проекты с многофайловой структурой напрямую также не поддерживаются. Собственно, этого всего не нужно, поскольку для профессиональной разработки сложных программных продуктов такой инструмент малопригоден. Для подобных целей стоит использовать полноценную интегрированную среду разработки , которая, помимо перечисленных мною возможностей, предоставляет еще массу различных сервисов, в том числе инфраструктуру для совместной разработки программных решений (Team Foundation Server, TFS ).

Что может эта программа , и с какой целью я здесь выкладываю ее исходный код? Возможности программы следующие: пользователь может писать текст программ на C# или VB.NET, запускать его и выполнять простейшие действия по отладке (программа сообщает об ошибках и указывает их местонахождение), создавать запускаемые модули (exe) или динамически подключаемые библиотеки (dll), подключать другие программные компоненты и сохранять исходный код и параметры сборки в текстовых файлах.

Кому может быть полезен такой инструмент программирования? Ну, во-первых, его можно использовать в рамках учебных курсов по программированию, поскольку он является бесплатным, а его возможностей для целей обучения основам программирования и алгоритмизации вполне хватает. На сайте эта программа как раз и предлагается в качестве курса . Имея исходный код проекта на C#, можно “докрутить” его функциональность под требования конкретного процесса обучения, к примеру, подключить библиотеки с базовыми алгоритмами, встроить автоматизированную подсистему проверки результатов заданий и выставления оценок и т.п. Во-вторых, часть исходного программного кода этого проекта можно использовать при разработке прикладных подсистем, в задачи которых входит интерпретация различного рода бизнес - сценариев, исполнения внешних хранимых процедур и т.д. Более подробно про задачу разработки архитектуры написано .

Описание проекта

Весь проект можно условно разделить на две части: сервисы документа программы и элементы его окружения . Сервисы документа выделены в отдельное пространство имен Document . Основным типом пространства имен Document является сам документ программы – класс CSSDocument , который инкапсулирует в себе пользовательский программный код, различного рода настройки, ссылки на внешние программные компоненты и результаты компиляции. К основным задачам класса CSSDocument относятся: динамическая компиляция, чтение и сохранения программного кода и настроек программы в текстовых файлах, формирование exe и dll модулей и выполнение программы в режиме отладки. Все остальные части Coding Craft Studio – это элементы окружения документа, главной задачей которого является организация взаимодействия с пользователем посредством . Как я уже сказал, проект написан на языке программирования C#. Исходный код сопровождается комментариями, которые при наличии желания помогут разобраться в его работе.

В основе программы используется технология отражения (reflection) , которая предоставляет интерфейсы для доступа к элементам загруженной или динамически сформированной программной сборки (Assembly). Технология отражения построена на базе сервисов чтения и обработки сборки , более подробно про которые можно узнать в материалах, посвященных виртуальной машине и ее окружению. Если кратко описать алгоритм работы программы, то выглядит это следующим образом. Сначала создаем и инициализируем сервис динамической компиляции (CodeDomProvider). Выполняем динамическую компиляцию, вызывая соответствующий метод (CompileAssemblyFromSource) и передавая в качестве параметров экземпляр класса настроек (CompilerParameters) и сам программный код. Если компиляция прошла без ошибок, то ее результатом является сформированная в памяти сборка. Далее, средствами отражения ищем в полученной сборке тип приложения (класс Application), ищем с помощью все того же отражения у этого типа точку входа (метод Main). Потом создаем экземпляр типа приложения и запускаем его, вызывая метод точки входа. В процессе постоянно контролируем возникновение и должным образом их обрабатываем. Все довольно просто, и в подтверждение этих слов ниже приведена часть исходного кода класса CSSDocument , содержащая методы компиляции и запуска программы: Compile() и Run() .

namespace CodingCraftStudio { //Основые сервисы Coding Craft Studio namespace Document { //Поддерживаемые языки программирования public enum CCSLanguage { CSharp = 0 , VisualBasic = 1 } //Документ приложения (исходный код, список библиотек) public class CCSDocument { //Динамическая компиляция программного кода private void Compile (CompilerParameters _CompilerParameters, ref CompilerResults _CompilerResults) { _CompilerParameters. CompilerOptions = this . CompilerOptions; foreach (CCSString _Reference in m_References) _CompilerParameters. ReferencedAssemblies. Add (_Reference. Value); CodeDomProvider _Provider = null ; switch (this . Language) { case CCSLanguage. CSharp: { _Provider = new CSharpCodeProvider (); break ; } case CCSLanguage. VisualBasic: { _Provider = new VBCodeProvider (); break ; } } if (_CompilerParameters. GenerateExecutable) if (_Provider. Supports (GeneratorSupport. EntryPointMethod)) _CompilerParameters. MainClass = this . NameSpace + "." + this . ApplicationTypeName; _CompilerResults = _Provider. CompileAssemblyFromSource (_CompilerParameters, this . Code); if (_CompilerResults. Errors. Count > 0 ) throw new CCSRunTimeException ("Ошибки компиляции!" ); } //Динамическая сборка [ System. ComponentModel. Browsable (false )] public Assembly CompiledAssembly { get { if (m_CompilerResults == null ) return null ; return m_CompilerResults. CompiledAssembly; } } //Получение типа динамической сборки по имени [ System. ComponentModel. Browsable (false )] public Type CompiledType (string _Name) { if (m_CompilerResults == null ) return null ; if (_Name == string . Empty) return null ; return m_CompilerResults. CompiledAssembly. GetType (_Name); } //Создание экземпляра типа public object CreateInstance (Type _Type) { return _Type. GetConstructor (Type. EmptyTypes). Invoke (null ); } //Запуск приложения public void Run () { if (string . IsNullOrEmpty (this . ApplicationTypeName)) throw new CCSSettingsException ("Не задан класс приложения: ApplicationTypeName!" ); this . Compile (); Type _type; _type = this . CompiledType (this . NameSpace + "." + this . ApplicationTypeName); if (_type == null ) throw new CCSRunTimeException ("Класс " + this . ApplicationTypeName + " не определен!" ); MethodInfo _entryPoint; _entryPoint = this . CompiledAssembly. EntryPoint; if (_entryPoint == null ) throw new CCSRunTimeException ("Не определена точка входа!" ); object _object; _object = this . CreateInstance (_type); if (_object == null ) throw new CCSRunTimeException ("Не удалось создать экземпляр " + this . ApplicationTypeName + "!" ); try { _type. InvokeMember (_entryPoint. Name, BindingFlags. InvokeMethod, null , _object, null ); } catch (Exception ex) { throw new CCSRunTimeException ("Не удалось вызвать метод точки входа " + _entryPoint. Name + " приложения " + this . ApplicationTypeName + "! " + ex. Message, ex); } } ...часть исходного кода пропущена... } } }

Если интерес к предмету остался, то скачивайте

NetBeans IDE - бесплатная интегрированная среда разработки с открытым исходным кодом для разработчиков программного обеспечения. Среда предоставляет все средства, необходимые для создания профессиональных десктоп приложений, корпоративных, мобильных и веб-приложений на платформе Java, а также C/C++, PHP, JavaScript, Groovy и Ruby.

  • Рабочая область среды IDE является полностью настраиваемой - существует возможность пользовательской настройки действий, выполняемых с помощью панели, назначения "горячих" клавиш и т.д.
  • IDE имеет в своем составе расширенный многоязыковой редактор для различных языков программирования - Java, C/C++, Ruby, Groovy, PHP, JavaScript, CSS, XML, HTML, RHTML, JSP, документацию Javadoc. Существует возможность расширения функций редактора с целью поддержки любого другого языка.
  • Редактор NetBeans делает отступы строк, проверяет соответствие скобок и слов, подсвечивает синтаксис исходного кода.
  • Производится проверка ошибок во время ввода, отображение вариантов для автозавершения кода и фрагментов документации по требуемому языку программирования.
  • Редактор может генерировать и вставлять в исходный код стандартные фрагменты кода на Java или других языках.
  • Браузер классов позволяет просматривать иерархию и структуру любого класса Java - отображаются интерфейсы, базовые классы, производные классы и члены классов.
  • Существует возможность перемещения любой вкладки редактора в пределах рабочего пространства IDE и за её пределы, создавая независимое окно, которое можно переместить на второй экран.
  • Возможность группирования связанных проектов - создавая группы проектов, можно быстро открывать и закрывать несколько сгруппированных проектов одновременно.
  • Расширенные средства для выполнения контекстно-зависимого поиска по всей среде IDE, справочным материалам и всем открытым проектам и файлам.
  • Существует возможность создания проектов в свободном формате или начинать работу с проектом с шаблона. В комплекте со средой IDE поставляются шаблоны и примеры проектов для приложений Java SE, мобильных, веб-приложений и приложений уровня предприятия, приложений JavaFX, подключаемых модулей NetBeans, приложений Groovy, PHP, C/C++, Ruby и Ruby on Rails.
  • NetBeans IDE является платформой для построения десктоп приложений с функциональным пользовательским интерфейсом, т.к. представляет из себя фреймворк к Java библиотеке Swing.
  • NetBeans имеет встроенную поддержку CVS, Mercurial и Subversion. Для просмотра изменений используется редактор с цветовыми обозначениями.

Возможности программирования в NetBeans:

  • Разработка Java десктоп приложений с профессиональными графическими интерфейсами пользователя. Используется визуальный редактор - Swing GUI Builder. Работа осуществляется путем перетаскивания элементов графического интерфейса из палитры на холст. Предварительное позиционирование элементов можно осуществлять с помощью указателя мыши. Панель свойств и инспектор компонентов предоставляют возможность тонкой настройки каждого компонента интерфейса.
  • Создание веб-приложений и корпоративных приложений в соответствии со стандартами. Среда NetBeans предоставляет полную поддержку Java EE 6. Позволяет разрабатывать веб-страницы, сервлеты, веб-сервисы, Enterprise Java Beans (EJB), проекты Java EE с использованием JavaServer Faces 2.0 (Facelets), Spring, Struts и Hibernate.
  • Программирование на PHP, поддержка всех сопутствующих языков программирования, технологий и веб-стандартов. Возможность создавать проекты PHP на основе платформы Zend или Symfony. Редактор PHP динамически интегрирован с функциями редактирования HTML, JavaScript и CSS. Проекты PHP могут быть развёрнуты из среды NetBeans на локальном или удаленном сервере при взаимодействии через FTP или SFTP.
  • Возможность создания, тестирования, отладки и внедрения приложений, функционирующих на мобильных телефонах, карманных компьютерах, телеприставках и встраиваемых системах. Visual Mobile Designer (VMD) создает всю необходимую модульную инфраструктуру проекта и обеспечивает быструю разработку графических интерфейсов путём перетаскивания в рабочую область компонентов - экран ожидания, экран входа в систему, обозреватель файлов, средство составления сообщений SMS и экран заставки. Возможность создания пользовательского интерфейса на основе SVG.
  • Использование JavaFX Composer для визуального структурирования приложения JavaFX с графическим интерфейсом, аналогично конструктору GUI Swing для Java десктоп приложений.
  • Возможность разработки профессиональных приложений на языках C, C++ для различных платформ - Windows, Linux, Mac и Solaris. Поддерживаются все широко используемые компиляторы - GNU, Cygwin и MinGW. Существует возможность установки требуемого компилятора, определений препроцессора, параметров времени компиляции и т.д.
  • Расширенные возможности по работе с базами данных - встроенный клиент к базам данных - MySQL, Postgres, Oracle и др., редактор запросов SQL, возможность редактировать таблицы баз данных напрямую через редактор таблиц.
  • Интеграция с серверами приложений и контейнерами сервлетов - автоматическое развёртывание приложений, управление сервером - запуск, остановка, перезапуск.
  • Многоязычный пользовательский интерфейс с поддержкой русского языка.
  • Расширение функциональности с помощью подключаемых модулей, гибкая система управления компонентами, модулями, обновление и загрузка модулей через интернет.

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

Интегрированная среда разработки - это система программных средств, используемая для разработки ПО. О ней и пойдет речь в моей статье.

Microsoft Visual Studio

Внешний вид Visual Studio в работе

Данная система программирования разработана компанией Microsoft и включает в себя интегрированную среду программирования и другие инструментальные особенности. Этот продукт позволяет создавать консольные и графические приложения, веб-сайты, веб-приложения на языках C++, C#, Visual Basic.NET и F#. Visual Studio включает в себя редактор кода, редактор формы, отладчик, компилятор и разного рода плагины.

Anjuta

Anjuta в работе


Интегрированная среда разработки GNOME, позволяющая работать с такими языками программирования как C++, Vala, Java, JavaScript и Python. Наиболее хорошо подходит для разработки графических программ. Кстати, поддержка JavaScript была добавлена в рамках проекта Google Summer of Code в 2009 году. Данная среда программирования содержит большинство необходимых инструментов для комфортного программирования: мастер приложений, отладчик, редактор исходного кода, с поддержкой подсветки синтаксиса.

NetBeans

Начальная страница NetBeans


Интегрированная среда разработки приложения, работающая на языках Java, Python, PHP, JavaScript, C, C++, АДА и так далее. Этот проект спонсируется компанией Oracle, но разработка ведется независимой группой разработчиков. По возможностям NetBeans не уступает лучшим платным, коммерческим средам разработки. NetBeans включает в себя возможность рефакторинга, профилирования, выделения синтаксических конструкций цветом, автоподбор конструкций, множество шаблонов.

Eclipse

Eclipse в работе

Свободная, то есть бесплатная интегрированная среда программирования для разработки кроссплатформенных приложений. Eclipse в первую очередь является платформой для разработки расширении, также любой разработчик может вставить в Eclipse свои дополнения. Eclipse дает возможность программирования на языках C, Java, ADA, PHP, COBOL и так далее.

KDevelop

KDevelop в действии

Опять же свободная интегрированная среда разработки. Разработка началась в 1998 году. В состав не включен компилятор, используется любой сторонний компилятор для создания машинного кода. Для редактирования исходного кода подключается текстовый редактор, как отдельный компонент. Из возможностей присутствует подсветка синтаксиса, менеджер проектов, встроенный помощник и система завершения кода. Данная среда поддерживает множество языков программирования, таких как C, C++, Perl, Python, PHP, Java, Ruby, SQL, ADA, Паскаль и Фортран.

XCode

XCode в действии

Интегрированная среда разработки предназначенная для OS X и iOS. Разработана корпорацией Apple. Самая первая версия данной среды была выпущена 2001 году. Новейшие версии распространяются и по сей день. Данная система предназначена в частности для создания графического интерфейса. Поддерживает языки семейства C, Java, AppleScript, Python и Ruby.

Сервисы сообщений

Как мы отмечали выше, сервисы сообщений используются для создания корпоративных Web-сервисов. Такие сервисы базируются на документах, а не на специфичных для сервиса интерфейсах. Вызывая сервис сообщений, клиент отсылает документ (например, заказ на приобретение продуктов), а не дискретный набор параметров. Web-сервис принимает документ, обрабатывает его и может даже не отсылать результирующее сообщение. Отсутствие в данном сценарии тесной связи между запросом и ответом дает определенные преимущества по сравнению с сервисами удаленного вызова процедур.

Платформа для создания и выполнения Web-сервисов, предлагаемая фирмой BEA, называется BEA WebLogic E-Business Platform и содержит следующие ключевые компоненты:

  • BEA WebLogic Server - сервер приложений, входящий в лидирующую тройку продуктов на рынке. Представляет собой основу платформы BEA WebLogic E-Business Platform и обеспечивает доступ и внедрение простых Web-сервисов. В настоящее время предусмотрена поддержка таких стандартов, как XML, SOAP, UDDI и WSDL;
  • BEA WebLogic Integration - открытый и расширяемый продукт, позволяющий интегрировать партнеров через Web и создавать комплексные Web-сервисы с поддержкой транзакций и защиты информации, работающие на основе стандартов ebXML и BTP;
  • BEA WebLogic Personalization Server - обеспечивает настройку Web-сервисов под конкретных клиентов в зависимости от пользовательских настроек, бизнес-правил или других критериев;
  • BEA WebLogic Workshop - средство разработки Web-сервисов на платформе BEA WebLogic E-Business Platform.

Создание Web-сервисов с помощью интегрированной среды WebLogic Workshop облегчается тем, что данная среда предоставляет обширный набор визуальных средств для разработки дизайна сервисов. Использование специальных компонентов обеспечивает доступ к таким ресурсам, как базы данных, компоненты EJB, а также к другим Web-сервисам и существующим приложениям. В состав продукта входят следующие компоненты: ServiceControl, TimerControl, EJBControl и JMSControl. Логика работы сервиса сохраняется в JWS-файле, содержимое которого графически отображается в режиме дизайна (рис. 2).

Приложения, создаваемые с помощью WebLogic Workshop, полностью соответствуют спецификации J2EE и не требуют внедрения на сервер приложений BEA WebLogic Server - достаточно любого сервера приложений, поддерживающего стандарт JWS. В состав WebLogic Workshop входит версия BEA WebLogic Server, поэтому Web-сервисы безо всяких проблем внедряются как файлы Enterprise Archive (EAR).

Завершая рассмотрение продуктов фирмы BEA Systems, отметим, что компания хорошо позиционирована на рынке, предлагает один из ведущих серверов приложений, имеет четкую стратегию по поддержке Web-сервисов и связанных с ними технологий и следует ей, разумно подходя к приобретению продуктов сторонних компаний и развивая собственные продукты.

Дополнительную информацию по продуктам фирмы BEA можно получить по адресу: http://www.beasys.com/products/index.shtml .

Borland

ирму Borland можно смело назвать пионером в области разработки средств создания Web-сервисов для различных платформ. Так, Delphi 6 позволяет создавать и использовать SOAP и WSDL на платформе Windows, Borland Kylix - на платформе Linux, а JBuilder - на платформе Java.

Продукты компании Borland можно разделить на три категории: разработка, развертывание и управление. К первой категории относятся:

  • Borland Enterprise Studio - это полная платформа для моделирования, разработки и внедрения решений для бизнеса и электронной коммерции. Продукт выпускается в двух вариантах: Borland Enterprise Studio for Java (включает JBuilder) и Borland Enterprise Studio for Windows (включает Delphi);
  • C++Builder - популярное средство для разработки Windows-приложений на языке C++; в версии 6 позволяет разрабатывать Web-сервисы и приложения на их основе. C++Builder 6 обеспечивает поддержку клиентов Web-сервисов, использующих как SOAP encoding, так и Document Literal style. Последний входит в состав Microsoft .NET Web Services. Предоставляя набор высокоуровневых компонентов и визардов, в том числе автоматическую публикацию WSDL-документов для Web-сервисов в режиме исполнения и генерацию кода на основе WSDL (WSDL Importer), C++Builder 6 позволяет разработчикам легко адаптировать существующие приложения для работы в режиме Web-сервисов и доступа к ним как во внутрикорпоративной сети, так и через Web;
  • Delphi 6 - обеспечивает быструю разработку приложений с использованием технологий CORBA и Web Services для платформы Windows. Необычайная легкость создания Web-сервисов позволяет быстро трансформировать существующие приложения в Web-систему. Интегрированная поддержка Apache дает возможность быстро создавать динамические Web-приложения с доступом к базам данных. Совместимость с Borland Kylix 2 обеспечивает кросс-платформенную разработку (в том числе многозвенных систем на основе CORBA IIOP и SOAP) без ущерба функциональности. Возможность доступа к компонентам Enterprise JavaBeans, развернутым на Borland AppServer, и наличие высокоуровневых средств работы с XML позволяют создавать решения корпоративного уровня;
  • JBuilder - включает наиболее полный набор средств визуальной разработки для создания приложений на платформе Java 2/J2EE 1.3. JBuilder 6 удовлетворяет практически всем возможным требованиям разработчиков конечных решений, позволяя интегрировать Web- и корпоративные приложения и обеспечивая группы разработчиков удобной и масштабируемой средой разработки. Визуальные инструменты и мастера упрощают и ускоряют разработку приложений. JBuilder 6 позволяет вести разработку на нескольких платформах, включая Windows, Linux, Solaris и Mac OS X. В настоящее время JBuilder занимает более 60% рынка коммерческих средств разработки на платформе Java;
  • Kylix - обеспечивает быструю разработку приложений с применением технологий CORBA и Web Services для платформы Linux. Уникальная легкость создания Web-сервисов дает возможность оперативно трансформировать существующие приложения в Web-систему. Интегрированная поддержка Apache позволяет быстро создавать динамические Web-приложения с доступом к базам данных. Совместимость с Borland Delphi 6 обеспечивает кросс-платформенную разработку без ущерба функциональности, включая разработку многозвенных систем на основе CORBA IIOP и SOAP. Возможность доступа к компонентам Enterprise JavaBeans, развернутым на Borland AppServer, и наличие высокоуровневых средств работы с XML позволяют создавать решения корпоративного уровня.

Для развертывания приложений Borland предлагает Borland e-business platform - основу для создания полноценной информационной инфраструктуры современного предприятия. Ориентированность на стандарты, уникальная гибкость и масштабируемость - залог успеха проектов, построенных на базе данных технологий. К этой категории относятся следующие продукты:

  • Borland Enterprise Server - первый интегрированный комплекс средств на основе новейших промышленных стандартов CORBA 2.4 и J2EE 1.3. Borland Enterprise Server, развивающий функциональность AppServer и VisiBroker, занимает ведущие позиции в области инфраструктурного программного обеспечения для телекоммуникационного и банковско-финансового секторов, в которых масштабируемость, высокая скорость обработки транзакций и доступность в режиме 24Ѕ7 являются критически важными требованиями;
  • Borland Enterprise Server AppServer Edition позволяет разработчикам сконцентрировать свои усилия на создании прикладной логики в виде компонентов EJB (Enterprise JavaBeans). Лежащее в основе AppServer инфраструктурное ядро VisiBroker добавляет к богатству функциональности J2EE мощь коммуникативных средств CORBA IIOP (Internet Inter-ORB Protocol), удовлетворяющих требованиям таких новых и актуальных стандартов, как CORBA Portable Object Adapter (POA), Object-by-value (OBV - передача объектов по значению) и RMI-over-IIOP;
  • Borland Enterprise Server Web Edition включает Web-сервер Apache и Web-контейнер Tomcat, которые были усовершенствованы Borland (в Apache встроен IIOP plug-in, конвертирующий HTTP-запросы в IIOP). Также в поставку BES Web Edition включена база данных JDataStore, которая не только удовлетворяет стандартные потребности разработчиков в области СУБД, но и позволяет осуществлять кэширование сессий. Borland Web Engine, интегрирующий Borland Web Server и Borland Web Container, построен на базе ядра VisiBroker, при помощи которого происходит управление балансом загрузки, а также обеспечивается отказоустойчивость среды развертывания сервлетов/JSP, Web-приложений и Web-сервисов, созданных с использованием Delphi;
  • Borland InterBase 6 - SQL-сервер баз данных, объединяет простоту использования, низкие затраты на сопровождение и мощность систем корпоративного уровня. Компания Borland гарантирует, что InterBase 6 совмещает силу мощной, апробированной архитектуры с развитыми технологиями, необходимыми для успеха прикладных систем.

И наконец, для управления и мониторинга прикладной инфраструктуры предприятия Borland предлагает AppCenter - уникальное средство управления и мониторинга объектных распределенных систем. Borland AppCenter 4.1 включает развитые инструменты управления объектами CORBA и компонентами Enterprise Java Beans (EJB), что делает его незаменимым средством для обеспечения жизненного цикла современных информационных систем. Интеграция AppCenter 4 с VisiBroker 4.x и Borland AppServer 4.x (включая версию 4.5.1) обеспечивает создание единой высоконадежной информационной среды предприятия.

Разработка Web-сервисов средствами Delphi 6, C++ Builder и Kylix базируется на трех основных компонентах:

  • BizSnap - для создания Web-сервисов на основе XML и SOAP. BizSnap упрощает обмен, трансформацию и манипуляцию XML-документами, обеспечивая гибкость и расширяемость бизнес-приложений, приводя их в готовность к использованию в электронном бизнесе новой волны;
  • WebSnap - для создания и отладки Web-приложений. Инструменты, входящие в состав WebSnap, например отладочный Web-сервер, упрощают отладку и тестирование приложений. Возможность плотной интеграции приложений WebSnap в корпоративные Web-сайты и порталы, разработанные с использованием таких известных средств, как DreamWeaver и FrontPage, а также поддержка серверных сценариев на JavaScript, VBScript и других языках позволяют вам задействовать существующие наработки в области Web-приложений;
  • DataSnap - для создания соединений с базами данных для приложений и сервисов через XML, DCOM или CORBA. DataSnap оптимизирует число соединений и потоки данных между клиентами и серверами баз данных за счет централизации доступа к данным и их обновления во всех процессах и приложениях электронного бизнеса, а также позволяет масштабировать приложения в зависимости от изменения объемов обрабатываемых данных.

Дополнительную информацию о продуктах фирмы Borland можно получить по адресу: http://www.borland.com/ .

Hewlett-Packard

ewlett-Packard была первой компанией, которая стала заниматься исследованиями в области Web-сервисов еще в 1995 году. В 1999 году компания объявила о платформе E-speak, ставшей прообразом современной линейки продуктов фирмы, но до марта 2001 года никакой видимой активности в этом направлении не проявляла. В настоящее время объявлено о большом наборе программных продуктов под общим названием NetAction. Этот набор можно разделить на следующие основные компоненты:

  • HP Netaction Internet Operating Environment (IOE) - интегрированная платформа для построения и внедрения решений, позволяющая сконцентрироваться на бизнес-проблемах, а не на разработке программ;
  • HP Opencall - платформа для разработки сервисов, связанных с доставкой данных, голосовой информации и т.п.;
  • HP Chai - полная платформа для доставки Web-сервисов на различные устройства. Представляет собой настраиваемую Java-среду для доступа к Web, а также модульные блоки Embedded Linux.

Взаимодействие этих компонентов, а также ряда других продуктов фирмы показано на диаграмме (рис. 3).

Рассмотрим основные компоненты HP Netaction IOE более подробно:

  • HP Application Server - сервер приложений «нового поколения» с сервис-ориентированной архитектурой и поддержкой подключаемых сервисов;
  • HP Application Server Resilient Edition - версия сервера приложения для поддержки непрерывной работы, сообщений, транзакций и других технологий для обеспечения работоспособности Web-сервисов;
  • HP Process Manager - средство управления процессами, позволяющее графически определять бизнес-процессы и автоматизировать их выполнение;
  • HP Process Manager, Interactive Edition - средство быстрой (посредством графических средств моделирования) разработки композитных приложений для основанных на базе Web или мобильных сервисов;
  • HP Total-e-Transactions - средство управления транзакциями для J2EE-приложений;
  • HP Message Service - средство поддержки J2EE Java Message Service;
  • HP Web Services Registry - позволяет потребителям создавать и управлять корпоративными реестрами и доступом к Web-сервисам. Включает HP Registry Composer - графическое средство для регистрации и поиска сервисов как в Web-, так и в корпоративных реестрах;
  • HP Total-e-Syndication - средство автоматизации доставки наполнения Web-сервисов, интегрирующееся с другими продуктами фирмы;
  • HP Mobile Portal Solution - средство для доставки сервисов и наполнения на мобильные устройства;
  • HP Web Services Transactions - средство для управления транзакциями, состоящее из трех компонентов: координатора транзакций, сервера транзакций и клиентских библиотек, используемых для инициализации транзакций;
  • HP Web Services Platform - основанная на стандартах открытая архитектура для разработки, внедрения, регистрации, поиска и потребления Web-сервисов, в том числе программных средств и утилит для реализации Java-объектов в виде Web-сервисов. Архитектура HP Web Services Platform показана на рис. 4 .

Для разработки сервисов предлагается использование средства HP Service Composer, которое предоставляет графический интерфейс для создания WSDL-интерфейсов для Java-объектов и поддерживает автоматическое внедрение Web-сервисов на сервер приложений HP Application Server.

Hewlett-Packard занимает собственную нишу на рынке средств создания Web-сервисов, сравнимую, может быть, с нишами, занимаемыми IBM и Sun, - компания обладает и аппаратными платформами для выполнения Web-сервисов, и программными платформами для внедрения и управления сервисами, а при успешном слиянии с Compaq у Hewlett-Packard появятся и консалтинговые сервисы.

Дополнительную информацию о поддержке Web-сервисов можно получить по адресам: http://www.hp.com/go/webservices/ , http://www.hp.com/go/webservicestools/ и http://www.hp.com/go/middleware/ .

IBM

отя IBM и не была в числе первых компаний, сформулировавших свое видение Web-сервисов, она фактически является лидером (как и с Microsoft) по продвижению стандартов и технологий, связанных с Web-сервисами. В настоящее время компания IBM не только предлагает широкий спектр продуктов для создания и внедрения Web-сервисов (от WebSphere Suite до средств хостинга Web-сервисов, поддержки Web-сервисов на уровне СУБД DB2 - в семействе продуктов Tivoli и Lotus), но и имеет определенную политику в отношении развития самой концепции Web-сервисов и активно участвует в ее продвижении, сотрудничая с другим лидером - Microsoft.

Говоря о предлагаемых IBM продуктах для создания и внедрения Web-сервисов, следует в первую очередь отметить такие средства, как WebSphere Studio для создания сервисов на языке Java, сервер приложений WebSphere Application Server, MQ Series для управления сообщениями для объединения систем, включая поддержку SOAP и Web-сервисов на уровне СУБД DB2.

Основные продукты

Из обширного семейства продуктов фирмы IBM можно выделить две линейки, представляющие прежде всего интерес для тех, кто собирается создавать Web-сервисы: семейство продуктов WebSphere Studio и семейство продуктов WebSphere Application Server:

  • WebSphere Studio - это набор средств для создания Web-сервисов. Существенно то, что данный продукт рассчитан не только на разработчиков, но и на Web-дизайнеров, художников и Web-мастеров, которые могут принимать участие в создании сервисов. WebSphere Studio включает такие средства, как Applet Designer - визуальное средство для создания Java-аплетов, WebArt Designer - для создания графических элементов и Animated Gif Designer - для создания анимированных GIF-изображений. Помимо этого отметим наиболее важные компоненты, входящие в состав WebSphere Studio: WebSphere Studio Site Developer - средство для создания и публикации Web-сервисов с поддержкой основных Web-стандартов, WebSphere Studio Application Developer - полный набор средств, включенных в WebSphere Studio Site Developer, а также средства мониторинга и тестирования сервисов;
  • WebSphere Application Server - этот серверный продукт обеспечивает поддержку всех основных стандартов Web-сервисов, интегрируется с WebSphere Studio, облегчая таким образом создание и внедрение Web-сервисов. Кроме того, в состав WebSphere Application Server включены средства интеграции с другими продуктами фирмы IBM - например Lotus Domino и WebSphere Commerce Suite. WebSphere Application Server - один из первых серверов приложений, совместимый со спецификацией J2EE 1.3.

По данным Giga Information Group, платформа WebSphere является наиболее важной для создания Web-сервисов - ее указали 33% опрошенных. Второй по значимости оказалась Microsoft .NET, а третьей - J2EE с дополнительными технологиями поддержки Web-сервисов (рис. 5).

Другие продукты

Среди огромного числа продуктов, предлагаемых IBM, есть такие, которые так или иначе связаны с Web-сервисами. Наиболее важными из них являются следующие:

  • VisualAge for Java - визуальное средство разработки на языке Java, интегрируемое с семейством продуктов WebSphere Studio;
  • DB2 - реляционная база данных, поддерживающая основные стандарты Web-сервисов, в том числе XML, UDDI и SOAP. DB2 при использовании совместно с DB2 XML Extender позволяет извлекать и хранить данные через Web-сервисы;
  • Web Services Hosting Technology - семейство продуктов для управления Web-сервисами, позволяющее анализировать использование сервисов и использовать различные модели оплаты;
  • Web Services Gateway - набор различных функций защиты доступа, включая поддержку аутентификации пользователей;
  • Web Services Toolkit - набор средств для разработки Web-сервисов.

Web Services Toolkit, бесплатно распространяемый IBM набор средств для разработки Web-сервисов, представляет собой реализацию архитектуры Web-сервисов, описанную в документе «Web Services Architecture Overview», доступном на Web-сайте фирмы IBM. Этот набор содержит следующие компоненты:

  • клиентская часть:
    • UDDI4J API для управления UDDI-реестрами (как корпоративными, так и расположенными в Internet) через функции Save, Delete, Find и Get;
    • Services Registry API для управления UDDI-реестрами через функции Publish, Unpublish и Find;
  • спецификации WSDL 1.1, Web Services Flow Language (WSFL), WS-Inspection и HTTPR (Reliable HTTP);
  • набор средств для разработки Web-сервисов:
    • утилиты на базе AXIS, включая утилиту Java2WSDL для генерации WSDL-документов на основе Java-кода и утилиту WSDL2Java для генерации Java-прокси-кода на основе WSDL-документа;
    • Web Services Toolkit Configuration Tool для настройки и конфигурации Web Services Toolkit;
    • Utility Web Services Portal Tool для управления пользователями Web-сервисов, включенными в состав Utility Web Services;
  • набор Web-сервисов (Utility Web Services), предоставляющих набор функций, которые можно использовать при создании бизнес-приложений:
    • Notification;
    • Common Data;
    • User Identity;
    • Metering;
    • Accounting;
    • Contract.
  • примеры использования Utility Web Services;
  • набор программных средств для развертывания Web-сервисов, включая WebSphere Application Server Micro Edition и UDDI-реестр;
  • утилита WSDLdoc для автоматической генерации документации на основе WSDL-файлов;
  • набор Java-классов для программного управления WSDL-документами (WSDL4J);
  • SOAPConnect for LotusScript - средство, позволяющее приложениям Lotus Domino и Lotus Notes использовать Web-сервисы;
  • UDDI4J для управления UDDI-реестрами из Java-приложений.

Архитектура Web Services Toolkit представлена на рис. 6 . Здесь показаны основные компоненты Web Services Toolkit. Средства создания Web-сервисов, расположенные в нижней части справа, включают утилиты для обнаружения и публикации сервисов, а также для создания сервисов на основе существующих Java-приложений. Компоненты времени исполнения разделяются на серверные и клиентские компоненты. К серверным компонентам относятся UDDI-реестр для создаваемых Web-сервисов, набор Utility Web Services и примеры использования сервисов. Клиентские компоненты расположены в приложениях, которые обращаются к серверным компонентам, и поддерживают Java-интерфейсы, позволяющие приложениям осуществлять следующие операции:

  • публиковать и находить Web-сервисы, непосредственно обращаясь к UDDI (UDDI4J);
  • публиковать и находить Web-сервисы через WSDL-документы (WSDL-прокси);
  • обращаться к Web-сервисам через SOAP.

Отметим, что Web Services Toolkit не является коммерческим и его задача заключается в предоставлении набора технологий для широкого использования разработчиками. Ряд этих технологий впоследствии может войти в новые версии коммерческих продуктов типа WebSphere Studio Application Developer, WebSphere Application Server или в другие продукты IBM, Tivoli или Lotus (см. http://www.lotus.com/developer/).

В будущих версиях Web Services Toolkit планируется реализовать следующие компоненты: дополнительная поддержка защиты, расширения для управления сервисами, поддержка WorkFlow, поддержка новых версий Apache AXIS, предоставление среды для создания, публикации и поиска сервисов, улучшение интеграции с UDDI-реестрами.

Дополнительная информация о Web Services Toolkit доступна на Web-сайте по адресу: http://www.alphaworks.ibm.com/tech/webservicestoolkit/ .

Microsoft

icrosoft играет активную роль на рынке средств создания и потребления Web-сервисов и совместно с IBM участвует практически во всех связанных с этой технологиях новациях. Практически нет ни одного стандарта (начиная со стандарта языка XML), в принятии которого не была бы заметна роль Microsoft. Примером заинтересованности Microsoft в лидерстве на рынке Web-сервисов может служить факт создания совместно с IBM в феврале 2002 года ассоциации Web Services Interoperability Organization (WS-I, http://www.ws-i.org/), которая к настоящему времени насчитывает более 100 членов.

В качестве платформы для Web-сервисов Microsoft предлагает.NET Framework и набор корпоративных серверных приложений (семейство.NET Enterprise Servers). На сегодняшний день.NET представляет собой наиболее полную реализацию технологий Web-сервисов. Для разработки и потребления Web-сервисов Microsoft предлагает Visual Studio .NET - визуальную среду, поддерживающую все языки программирования и интегрирующуюся с существующими серверами компании.

Полнота реализации фирмой Microsoft технологий Web-сервисов подтверждается данными исследований, проведенных компанией Gartner, Inc. (см. «Web Services Major Vendors», D. Smith, August 2001 - рис. 7).

Продукты Microsoft для создания Web-сервисов подразделяются на пять основных категорий - .NET Experiences, клиенты, XML Web-сервисы, утилиты и серверы:

  • XML Web-сервисы - представляют собой строительные блоки компонентов, основанные на стандартах Web-сервисов: SOAP, WSDL, UDDI и XML. Первой, но неудачной попыткой создания подобных блоков стал набор сервисов, известных как.NET My Services, для хранения различной персональной информации. К этой категории также относятся такие сервисы, как.NET Passport и.NET Alerts;
  • .NET Experiences - Microsoft описывает.NET Experiences как набор Web-сервисов, которые позволяют «обращаться к информации через Internet или из обычных приложений». Пока различия между XML Web-сервисами и.NET Experiences определены недостаточно четко, но первыми продуктами в категории.NET Experiences стали: MSN - пользовательский Web-узел, поддерживаемый Microsoft, bCentral - Web-узел для малого бизнеса и Microsoft Visual Studio .NET - средство разработки приложений для.NET;
  • клиенты - к этой категории относятся как аппаратные, так и программные компоненты. Аппаратным компонентом может быть любое устройство, способное обращаться к Web-сервисам и поддерживающее TCP/IP-коммуникации, в том числе персональные компьютеры, телефоны, «ручные» компьютеры, игровые консоли и т.п. С точки зрения Microsoft, тип аппаратного компонента не имеет значения - главное, чтобы он базировался на каком-либо варианте платформы Windows; будь то Windows XP или Windows CE;
  • серверы - к данной категории относятся продукты семейства.NET Enterprise Servers, в том числе Microsoft Windows 2000 и др.;
  • утилиты - Microsoft предлагает большой набор программных средств для создания.NET Web-cервисов, в том числе Microsoft Visual Studio .NET и.NET Framework.

Архитектура платформы Microsoft .NET показана на рис. 8 .

Семейство продуктов Microsoft

Семейство продуктов Microsoft .NET пополняется практически каждый месяц, но для нашего обзора достаточно уже существующих серверных продуктов, средств разработки, операционных систем и Web-сервисов:

  • серверные продукты базируются на серверной операционной системе Windows 2000, на смену которой в скором времени придет ОС Windows .NET Server. Среди различных серверных продуктов следует выделить: Windows 2000 Server - серверную операционную систему, включающую поддержку каталогов, Web, приложений, коммуникаций, файловые сервисы и сервисы печати, Application Center для управления группами серверов; Mobile Information Server - сервер, позволяющий доставлять информацию и.NET-сервисы на мобильные устройства; BizTalk Server - сервер для поддержки обмена XML-информацией и документами между приложениями и бизнесами; Commerce Server - сервер для создания приложений электронной коммерции; Content Management Server - сервер для управления наполнением Web-сайтов и доставки этого наполнения различным клиентам;
  • средства разработки. Основным продуктом здесь является Microsoft Visual Studio .NET - средство для создания.NET-сервисов, поддерживающее такие языки программирования, как Visual Basic, C# и J#. Последний, однако, формально поддерживая синтаксис языка Java, не позволяет создавать стандартные Java-приложения - написанный код будет работать только под управлением Microsoft .NET;
  • операционные системы и прикладное ПО. Операционные системы являются ядром стратегии Microsoft .NET. Сюда входят все версии Windows, включая Windows CE для PDA, Windows Embedded и версии Windows, работающие на консоли Microsoft Xbox. Из прикладного программного обеспечения фирмы Microsoft отметим пакет Microsoft Office, для последней версии которого существует поддержка.NET;
  • Web-сервисы. Сервисы - это XML-компоненты и строительные блоки, которые могут использоваться Microsoft и другими компаниями для построения Web-сервисов.

Некоторые вопросы использования Microsoft Visual Studio .NET для создания Web-сервисов рассматривались в статье «Web нового поколения - Web-сервисы», опубликованной в КомпьютерПресс № 6’2001.

Дополнительную информацию о поддержке Web-сервисов можно найти на Web-сайте фирмы по адресу: http://www.microsoft.com/webservices/ .

Oracle

есмотря на то что фирма Oracle давно обсуждала проблемы, связанные с Web-сервисами, вполне четкая концепция поддержки этой технологии сформировалась относительно недавно. Теперь поддержка Web-сервисов сопровождается широкомасштабной кампанией, лозунг которой можно сформулировать следующим образом: «С использованием продуктов Oracle разработка Web-сервисов будет в десять раз быстрее, в десять раз менее ресурсоемкой, а сами сервисы будут в десять раз надежнее».

Oracle имеет два подхода к созданию и использованию Web-сервисов: во-первых, фирма предлагает программную инфраструктуру, которую разработчики могут использовать для создания Web-сервисов, а во-вторых, разрабатывает и продает программные продукты как Web-сервисы.

Более того, Oracle использует Web-сервисы для того, чтобы расширить сферу влияния за пределы рынка баз данных. Началом этому послужило появление E-Business Suite - набора корпоративных продуктов, которые могут работать через Internet.

Для разработки Web-сервисов Oracle предлагает J2EE-совместимую среду Oracle 9i JDeveloper (этот продукт доступен в виде бесплатной версии). Для выполнения Web-сервисов применяется сервер приложений Oracle 9i Application Server, а для создания приложений, использующих данные, СУБД Oracle 9i Database.

Кроме того, Oracle предлагает E-Business Suite - серверное программное обеспечение, работающее через Internet и включающее такие компоненты, как CRM, B2B, управление финансами, проектами, ресурсами, а также компоненты Business Intelligence. Набор Oracle Small Business Suite также работает через Internet и содержит модули для ведения счетов, создания отчетов, управления заказчиками и ряд других.

Sun Microsystems

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

Sun объявила инициативу Sun ONE (Open Net Environment) в октябре 2001 года (рис. 10). Необходимость появления этой платформы была обусловлена следующим обстоятельством: несмотря на то что J2EE обеспечивает надежную, масштабируемую, переносимую платформу для создания корпоративных решений, она до недавнего времени не имела стандартизованной поддержки Web-сервисов.

Sun ONE - это и архитектура, и платформа, и набор средств для создания и внедрения основанных на открытых стандартах (XML, UDDI, WSDL, SOAP) Web-сервисов, называемых в терминах Sun сервисами по запросу - Services on Demand (рис. 11).

Платформа Sun ONE базируется на следующих основных компонентах: на операционной системе Solaris, платформе Java 2 Platform, наборе серверов семейства iPlanet и средствах разработки Forte Development Tools. Ниже мы рассмотрим эти компоненты более подробно и перечислим их основные характеристики и назначение.

Solaris

Solaris - это операционная система на базе UNIX, функционирующая на системах на основе SPARC и на основе Intel. Она разработана с учетом мультипроцессорной поддержки и 64-битной архитектуры. Вместе с операционной системой поставляются Forte for Java, Forte Developer 6 Tools, iPlanet Web Server, iPlanet Directory Server, набор офисных продуктов StarOffice и СУБД Oracle8i Enterprise Edition.

В семейство Solaris входят следующие продукты:

  • Solaris Operating Environment - основа систем фирмы Sun. Это вычислительная среда для серверов любого уровня - от серверов отделов до массивных, объединенных в кластеры серверов, насчитывающих более 100 процессоров, - разработанная для мультипроцессорных 64-битных систем;
  • Trusted Solaris Operating Environment - расширяет возможности Solaris Operating Environment, защищая вычислительную среду от внутренних и внешних проникновений;
  • Solaris WBEM Services - используется для создания и модификации информации, хранимой в стандартном CIM-формате, облегчает администрирование Solaris Operating Environment и обеспечивает взаимодействие управляющих сервисов;
  • Solaris Bandwidth Manager - управляет сетевым трафиком;
  • Solaris Resource Manager - управляет системными ресурсами, обеспечивая их доступность и лучшее использование;
  • Solaris Easy Access Server - используется для включения систем на базе Solaris в сети на базе Windows NT;
  • Solaris PC NetLink - переносит сетевые сервисы типа Windows NT, файловые сервисы, сервисы печати, управление каталогами и аутентификацией с PC-серверов в среду Solaris Operating Environment;
  • Solaris Data Encryption - обеспечивает поддержку технологий шифрования для Solaris Operating Environment;
  • Solaris PDASync - синхронизует настольные приложения Solaris с устройствами на базе Palm OS и приложениями, выполняющимися на персональных компьютерах;
  • Sun Cluster - позволяет использовать базовые сервисы Solaris в рамках кластеров, обеспечивая полную совместимость с существующими приложениями для Solaris Operating Environment;
  • Sun Management Center - обеспечивает функции управления для Solaris Operating Environment, включая сервисы для управления аппаратными и программными конфигурациями. В дополнение к Sun Management Center предлагается Service Availability Manager, который увеличивает доступность сетевых серверов, выполняющихся локально или удаленно на системах Sun, осуществляет мониторинг и подтверждает доступность сетевых сервисов - Web-серверов, FTP-, Mail-, Calendar-сервисов и т.п. Дополнительным продуктом для Sun Management Center также является System Reliability Manager, который увеличивает надежность платформы и содержит ряд модулей для внедрения обновлений, слежения за файловой системой, запуска скриптовых программ и анализа протоколов сбоев операционной системы.

Более подробную информацию об операционной системе Solaris можно получить по адресу: http://wwws.sun.com/software/solaris/ .

Java 2 Platform

Java является ключевой технологией фирмы Sun, на которой базируется большинство предлагаемых ею продуктов и сервисов. С момента появления технологии Java базовая философия фирмы не изменилась: вы один раз пишете приложение на языке Java и оно способно работать на любой платформе, независимо от операционной системы. Для этого необходимо использование соответствующей виртуальной машины Java - Java VM. Самая новая версия платформы для разработки на языке Java - Java 2 Platform, Enterprise Edition (J2EE). С точки зрения фирмы Sun, приложения, которые будут выполнять функции Web-сервисов, должны быть написаны на языке Java. Java-приложения могут работать на любом устройстве, содержащем Java VM, включая персональные компьютеры, мобильные компьютеры, сотовые телефоны и беспроводные устройства.

Более подробную информацию о Java можно получить по адресу: http://wwws.sun.com/software/java/index.html .

В задачи данного обзора не входит рассмотрение всех интерфейсов и технологий, основанных на платформе J2EE. Здесь мы остановимся лишь на интерфейсах, обеспечивающих работу с XML-документами и создание и потребление Web-сервисов, - Java XML Pack и Java Web Services Developer Pack.

Java XML Pack

Пакет Java XML Pack - это набор интерфейсов и средств для разработки, публикации, обнаружения и потребления XML Web-сервисов для платформы Java 2 Platform. Входящие в состав Java XML Pack технологии можно разделить на две большие категории - средства для работы с XML-документами и средства для использования XML-технологий. К первой категории относятся:

  • Java API for XML Processing (JAXP) - набор интерфейсов для обработки XML-документов с использованием JAXP-совместимого парсера. Обеспечивается поддержка как событийной модели (SAX), так и древовидной модели (DOM) обработки XML-документов;
  • Java Architecture for XML Binding (JAXB) - средства для отображения между XML-документами и Java-классами, позволяющие использовать XML-документы как обычные Java-объекты.
  • К средствам использования XML-технологий, входящим в состав Java XML Pack, относятся:
  • Java API for XML Messaging (JAXM) - поддержка передачи XML-сообщений с использованием языка Java. JAXM базируется на спецификациях SOAP 1.1 и SOAP with Attachments, но при необходимости возможно расширение функциональности для поддержки высокоуровневых протоколов типа ebXML или bizTalk;
  • Java API for XML Registries (JAXR) - унифицированный механизм доступа к реестрам из языка Java. JAXR не связан с конкретной реализацией реестров и может использоваться как с XML-реестрами на базе стандарта ebXML Registry and Repository, так и с реестрами на основе спецификации Universal Description, Discovery and Integration (UDDI)
  • Java API for XML-based RPC (JAX-RPC) - средства поддержки вызова удаленных методов на базе языка XML через Internet.

Загрузить Java XML Pack можно по адресу: http://java.sun.com/xml/javaxmlpack.html .

Java Web Services Developer Pack

Недавно фирма Sun выпустила пакет Java Web Services Developer Pack (Java WSDP), в состав которого входит и Java XML Pack. Java Web Services Developer Pack - это набор средств, облегчающих создание Web-сервисов на платформе Java 2. Этот набор включает, помимо Java XML Pack, следующие компоненты:

  • JavaServer Pages Standard Tag Library (JSTL) 1.0 Beta 1;
  • Ant Build Tool 1.4.1;
  • Java WSDP Registry Server 1.0 EA2;
  • Web Application Deployment Tool;
  • Apache Tomcat 4.1-dev Container.

Java WSDP поддерживается на следующих платформах: Solaris 2.8, Windows 2000, Professional Edition, Windows XP, Professional Edition, RedHat Linux 7.2.

В состав Java Web Services Developer Pack входит более чем 600-страничное методическое пособие «The Java Web Services Tutorial», в котором рассматриваются все аспекты создания Web-сервисов с использованием перечисленных выше интерфейсов, библиотек и технологий.

Java WSDP можно найти по адресу: http://java.sun.com/webservices/webservicespack.html .

iPlanet

iPlanet - это семейство серверных продуктов фирмы Sun. В его состав входят Web-сервер, сервер каталогов, а также другие серверы, которые мы кратко рассмотрим ниже. Следует отметить, что появление в составе iPlanet средств обмена сообщениями является прямым ответом на Microsoft .NET Alerts. Однако в отличие от Microsoft .NET Alerts средства обмена сообщениями и нотификациями фирмы Sun базируются не на Microsoft Passport, а на альтернативном решении, известном как Liberty Alliance.

В семейство iPlanet входят следующие продукты:

  • iPlanet Directory Server - предназначен для хранения и управления профилями, привилегиями доступа, приложениями и сетевыми ресурсами. Кроме того, существуют версии iPlanet Directory Server Access Management Edition и iPlanet Directory Server Integration Edition;
  • iPlanet LDAP Proxy Server - обеспечивает сервисы безопасности для iPlanet Directory Server;
  • iPlanet Certificate Management System - обеспечивает корпоративные сервисы аутентификации сотрудников, клиентов и партнеров, управляет сертификатами на базе X.509;
  • iPlanet Web Proxy Server - служит в роли управляющего трафиком, собирая данные из сети, определяя механизмы перенаправления и выполняя соответствующие сервисы;
  • iPlanet Portal Server - используется для внедрения коммерческих порталов и включает сервисы управления членством, персонализации, интеграции и поиска информации;
  • iPlanet Web Server Enterprise Edition - Web-сервер с поддержкой Java Servlets и Java Server Pages;
  • iPlanet Biller Xpert - облегчает подготовку и публикацию счетов, оплату через Internet;
  • iPlanet Market Maker - управляет каталогами, ценовыми моделями, онлайновыми переговорами, аукционами и т.п.;
  • iPlanet BuyerXpert - используется для контроля закупок с Web-интерфейсом;
  • iPlanet SellerXpert - используется для автоматизации работы каналов продажи;
  • iPlanet Trustbase Transaction Manager - обеспечивает защищенные коммуникации между организациями и клиентами;
  • iPlanet Messaging Server - обеспечивает сервисы для обмена информацией, отсылки и приема сообщений с поддержкой Web-интерфейса;
  • iPlanet Calendar Server - управляет календарями, разделением ресурсов, расписанием событий и групповой работой;
  • iPlanet Application Server - используется для разработки, внедрения и управления основанными на Java 2 Platform Enterprise Edition (J2EE) приложениями на различных серверах, клиентах и устройствах. Также существуют версии iPlanet Application Server EAI Edition и iPlanet Application Server B2B Edition;
  • iPlanet Message Queue for Java - используется для интеграции унаследованных систем и данных с новыми приложениями и ERP-решениями;
  • iPlanet Unified Development Server - служит для быстрого создания, внедрения и управления сетевыми приложениями.

Более подробную информацию о семействе продуктов iPlanet можно получить по адресу: http://wwws.sun.com/software/iplanet/products/ http://wwws.sun.com/software/Developer-products/ffj/index.html .

Помимо всего прочего фирма Sun занимается разработкой набора Web-сервисов, включающего Sun ONE WebTop - набор офисных продуктов (текстовый процессор, электронная таблица, графический пакет и т.п), доступных как Web-сервисы, а также набора Web-сервисов для поддержки посылки/получения сообщений и управления расписаниями событий. Кроме того, в документе, озаглавленном «Sun ONE Architecture Guide», можно найти раздел, посвященный базовым Web-сервисам, в котором упоминаются такие сервисы, как Location Web Service, Presence Web Service, Notification Web Service, Usage Web Service, Search Web Service, File Web Service, а также набор Web-сервисов, делающих доступной функциональность продуктов семейства iPlanet.

Одним из примеров Web-сервисов является myServices.ONE, который реализует корзину покупателя, используемую в нескольких магазинах. Созданный с помощью iNsight for Forte for Java, этот Web-сервис позволяет покупателям просматривать и обновлять свои покупки в одной корзине. В сервис myServices.ONE входят: myIdentity (поддержка идентификации между Web-узлами), myBasket (поддержка централизованной корзинки покупателя для нескольких магазинов), myJeeves (централизованная автоматизация оплаты).

Как мы уже отмечали, фирма Sun не сразу четко сформулировала свою позицию по отношению к Web-сервисам. Из-за этого было потеряно время, позволившее другим компаниям - в первую очередь IBM и Microsoft - выйти в лидеры. Тем не менее Sun обладает всем необходимым - от языка Java до средств разработки, от операционной системы до серверных продуктов, - чтобы выйти в первую пятерку лидеров, предлагающих средства для создания Web-сервисов. К положительным моментам также следует отнести большое число Java-разработчиков, лояльных к продуктам и технологиям фирмы, а также наличие широкого спектра аппаратных решений.

Sybase

Феврале нынешнего года компания Sybase объявила о стратегической инициативе, направленной на то, чтобы помочь клиентам перенести существующие инфраструктуры на Web-сервисы. Sybase планирует активно участвовать в поддержке стандартов, участвует в работе таких организаций, как Web Services Interoperability Organization (WS-I) и Organization for Structured Information Standards (OASIS).

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

Разработка

EAServer Web Service Toolkit - набор средств для создания, тестирования, автоматизации и внедрения приложений с использованием Web-сервисов и соединения таких приложений с существующими бизнес-процессами. Эти средства также позволяют публиковать Web-сервисы через UDDI-реестры.

PowerDesigner 9.0 объединяет различные подходы к моделированию и позволяет пользователям полностью разобраться в элементах, составляющих Web-сервис. С помощью PowerDesigner 9.0 дизайнеры могут легко генерировать код и объекты баз данных, необходимые для разработки и выполнения Web-сервисов. Используя генерацию кода на основе шаблонов, PowerDesigner 9.0 автоматизирует создание кода для выбранного языка программирования, а также WSDL-документов, необходимых для внедрения Web-сервисов.

PowerBuilder будет поддерживать все стандарты, связанные с Web-сервисами, включая SOAP, XML, WSDL, UDDI и XSL, а также стандарты, которые появятся в будущем. Разработчики смогут публиковать и редактировать данные, а также обмениваться XML-информацией через протоколы, связанные с Web-сервисами на платформах J2EE и Microsoft .NET. Web-сервисы будут доступны клиентам PowerBuilder и другим клиентам, поддерживающим стандарты Web-сервисов. В настоящее время партнерская стратегия Sybase в области PowerBuilder дает разработчикам доступ к Web-сервисам через невизуальные объекты (Non-Visual Objects, NVO). PowerBuilder и Web Services Toolkit, поставляемый в составе Sybase EAServer, облегчают разработчикам на PowerBuilder создание и внедрение NVO как Web-сервисов прямо на сервер приложений EAServer.

Внедрение

EAServer 4.1 - сервер приложений с поддержкой открытых стандартов и технологий, необходимых для разработки, потребления и внедрения приложений на основе Web-сервисов, включая поддержку UDDI, SOAP, J2EE, WSDL и возможности управления UDDI-реестрами.

Business Process Integrator позволяет бизнесам интегрировать и управлять «потоком» Web-сервисов и приложений; таким образом компании могут управлять внешними и внутренними бизнес-процессами. Этот продукт позволяет доставлять SOAP-сообщения от одного приложения на основе Web-сервисов к другому, а кроме того, поддерживает приложения в стандартах ebXML и RosettaNet.

СУБД Sybase, в том числе Adaptive Server Enterprise, Sybase Adaptive Server IQ и SQL Anywhere, дают возможность приложениям на основе Web-сервисов обращаться к данным, хранимым в СУБД Sybase, а также в СУБД от IBM, Microsoft и Oracle, посредством хранимых процедур.

Доступ

В Sybase Enterprise Portal расширены возможности Portlet Framework для поддержки компонентов порталов (Portlets) с использованием Web-сервисов. Расширение существующей структуры позволяет разработчикам реализовать бизнес-логику в виде Web-сервисов и разделять такие сервисы между компонентами порталов (Portlets) и приложениями. Подобный подход позволяет существенно снизить время, необходимое для разработки и тестирования. Помимо этого такие Web-сервисы становятся доступными другим порталам и приложениям.

iAnywhere Solutions m-Business Platform поддерживает Web-сервисы для расширения доступа к корпоративной информации через мобильные и беспроводные устройства. Встроенная поддержка мобильных коммуникаций, включая возможность посылки сообщений на различные устройства с помощью различных сетевых протоколов, может быть использована как Web-сервис другими корпоративными приложениями. Компания также планирует создание набора средств для разработчиков, который позволит создавать дополнительные Web-сервисы.

Управление

BizTracker следит за производительностью среды, в которой выполняются Web-сервисы.

Open Bizs Interchange координирует и управляет Web-сервисами, а также различными гетерогенными технологиями на одном логическом уровне, который располагается над другими сервисами и может рассматриваться как единый элемент управления. Выступая в виде сервиса хостинга, Open Bizs позволяет пользователям быстро соединяться с партнерами с помощью выбираемой технологии и не требует установки и настройки различных связующих компонентов.

Дополнительная информация о продуктах фирмы Sybase может быть получена по адресу: http://www.sybase.com/

КомпьютерПресс 6"2002