Подборка бесплатных кроссплатформенных сред для веб-разработки. Универсальные интегрированные среды разработки Состав интегрированной среды разработки ide

[Дополнительная информация]

Ifs Kit help или DDK help: Driver Writers Guide\Driver Development Environment

[Л. 1] Chapter 18. Buildind and debugging drivers

[Л. 2] Chapter 8. Device Driver Structure; Chapter 9. Debugging a Device Driver

В этом разделе мы рассмотрим следующие вопросы:

    Необходимое ПО

    Установка и настройка

Необходимое ПО:

    Операционная система, Service Pack и отладочная информация

    Компилятор

    Средства отладки и вспомогательные средства

Операционная система имеет 2 варианта поставки:

    Checked build (Debug build)

    Free build (Retail build)

Free build – обычная поставка. Включена полная оптимизация и отсутствует специализированные отладочные возможности.

Checked build – специально разработана для использования разработчиками драйверов. Оптимизации почти нет, что способствует лучшему пониманию кода при работе под отладчиком. Специализированный отладочный код встроен во многие функции для проверки правильности параметров и перехвата ошибочных ситуаций. Поставляется только в составе подписки MSDN.

В комплекте с ОС нам понадобится отладочная информация (файлы с расширением.dbgи.pdb). Она содержит сопоставление адресов внутри конкретного исполняемого файла с символическими именами функций и переменных и может быть использована отладчиками.

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

После установки ОС необходимо установить последнюю версию SP. Надо помнить, что SP заменяет почти все системные файлы, и поэтому для них необходима новая символьная информация.

Для checkedи freeверсий системы необходимы отдельные версии SP. Кроме того, ОС и SP могут различаться по поддержке криптоалгоритмов (40-128 бит), что может влиять на возможность установки SP.

Компилятор . Хотя принципиально могут использоваться компиляторы различных производителей, структура заголовочных файлов и переменных окружения, поставляемых Microsoft для создания драйверов оптимизирована для использования компилятораMicrosoft Visual C. Версия компилятора должна быть не ниже 4.1, однако реально необходимая версия будет зависеть от двух других компонентов – SDKи DDK.

MSDN Library . При установке Developer Studio запрашивается установка MSDN Library –продукт, предоставляющий информацию о разработке ПО на всех поддерживаемых платформах Microsoft.

SDK . В ранних версиях комплект назывался Win32 SDK , сейчас – Platform SDK . Это необязятельный, но желательный для разработки драйверов компонент. Содержит заголовочные файлы, lib-файлы, документацию и примеры программирования на пользовательском уровне с использованием подсистемы Win32.

DDK . Существуют DDKдля Windows 95, Windows 98, Windows NT 4.0и Windows 2000. DDKдолжен соответствовать платформе, для которой предполагается создание драйвера, но не обязательно – на которой производится создание. Мы будем пользоваться DDKдля Windows NT 4.0. DDKсодержит заголовочные файлы, документацию и примеры написания драйверов, за исключением драйверов файловой системы.

IFS Kit . Пакет для создания драйверов файловой системы. Поставляется как отдельный от подписки MSDNпродукт. Существуют версии для Windows 98, Windows NT 4.0и Windows 2000. Последние версии включают в себя DDK, но с другим набором примеров. Более ранние версии требовали предварительной установки DDK.

Между перечисленным набором компонентов существует взаимосвязь:

Первым ставится компилятор. Как уже говорилось, хотя существует возможность использования компиляторов других фирм, SDKи DDK предполагают наличие именно Visual C, причем в зависимости от времени выхода SDKи DDK предполагаются различные версии компилятора (при линковке будут указаны библиотеки от различных версий – этим грешит SDK, либо будут некорректно запускаться командные файлы инициализации переменных окружения – этим грешит DDK). Кроме того, ранние версии DDK требовали обязательного наличия установленного SDK. Из возможных проблем еще стоит указать то, что при использовании ОС Windows NT Workstation могут не устанавливаться системные переменные окружения.

Расположение командных файлов для установки переменных окружения:

    VC98\bin\vcvars32.bat

    Mstools\setenv.bat

    Ddk\bin\setenv.bat

При наличии версии DDK, требующей наличия SDK, из файла Ddk\bin\setenv.bat должны быть исключены строки проверки наличия SDK и запуска его файла setenv.bat, и прописан вызов vcvars32.bat, как это сделано на рабочих местах, где будут проходить л/р.

Средства отладки и вспомогательные средства.

Выбор средства отладки – важный момент, который может влиять на набор необходимых аппаратных средств.

Вместе с продуктами Microsoft поставляются 4 отладчика:

KD ,консольная программа для отладки драйверов режима ядра, находится в директории bin пакета DDK для NT4и Win2000. (i386kd.exe, ia64kd.exe, alphakd.exe, mipskd.exe)

NTSD ,консольная программа для отладки программ и драйверов пользовательского режима,находится в директории system32 ОСWindows 2000.

CDB ,вариант NTSD,содержится в директории bin пакетаDDK для Windows 2000.

WinDbg ,графический отладчик для отладки кода как пользовательского режима, так и режима ядра, содержится в директории bin пакетаDDK для Win2000 и Platform SDK.

Из всех перечисленных вариантов упоминания достоин только отладчик WinDbg. Он предоставляет удобный пользовательский интерфейс, однако очень неустойчив в работе, плохо документирован и не имеет поддержки от Microsoft. Для использования этого продукта для отладки драйверов необходимы 2 компьютера – Development Рlatformи Test Platform. Отладчик доступен для всех поддерживаемых платформ, при этом возможна кроссплатформенная отладка. Поддерживается работа на мультипроцессорных системах.

Лучшим отладчиком для отладки ОС и драйверов многие разработчики с полным основанием считают SoftICEфирмы NuMega. Стабильный в работе, хорошо документированный, поддержка от фирмы. Отладка осуществляется на том же компьютере, на котором проводилась разработка, однако возможна и удаленная отладка посредством dos-программы serial.exe. Недостатком можно считать пользовательский интерфейс, однако это дело привычки. Более серьезными недостатками является ограничение поддержки процессоров только платформой intel, а также отсутствие поддержки мультипроцессорных систем (однако система все еще активно развивается).

На рабочих местах для выполнения л/р установлен SoftIce в составе пакета NuMega Driver Studio v 2.0. Имеется полная документация в формате pdf.

На рабочих местах имеется также ряд вспомогательных средств для удобства в исследовании ОС и поведения драйверов. Часть этих средств снабжена исходными текстами, и все они могут являться хорошим наглядным пособием для написания драйверов. Перечислим эти средства:

    Monitor – просмотр трассировочной информации, выводимой драйверами и прикладными программами.

    Winobj – просмотр пространства имен диспетчера объектов

    Handleex – информация о запущенных процессах, всех открытых ими описателях и подгруженных модулях dll.

    Filemon – просмотр активности файловых систем, в том числе mailslotи npfs

    Regmon – отслеживание обращений к реестру, в том числе на этапе загрузки системы

    Portmon – отслеживание обращений к последовательным и параллельным портам

    Tdimon – отслеживание запросов TDI.

    Tokenmon – отслеживание работы системы, касающихся srm.

Существует множество способов писать код для веб-приложений: от текстовых редакторов до облачных сред разработки. Трудно сразу решить, какая среда лучше подходит для поставленных задач. Чтобы сэкономить вам время, выбрали наиболее популярные:

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

Текстовые редакторы для веб-разработки

Komodo Edit

Основные возможности:

  • бесконечная история отмены,
  • обширное количество плагинов,
  • поддержка сотен языков программирования и форматов файлов,
  • мощный поиск и замена,
  • интеграция со сторонними инструментами.

GNU Emacs

Настольные интегрированные среды разработки (IDE)

Eclipse

Облачные IDE

Большинство десктопных приложений перешли в «облако», поэтому нет ничего удивительного, что облачные среды также становятся популярными среди программистов. Не каждый сразу доверяет облачным IDE, но популярные инструменты вроде Github и Pastebin помогают привыкнуть к тому, что исходный код хранится не на локальной машине, а на стороннем сервере.

Cloud9

После нескольких минут работы в Cloud9 создаётся впечатление, что попал в рай для программистов. Интерфейс написан на JavaScript, а серверная часть - на NodeJS. Хотя Cloud9 облюбовали разработчики и дизайнеры интерфейсов, поддерживается подсветка синтаксиса C#, C++, Python, Perl, Ruby, Scala и некоторых других языков.

Встроенный режим Vim - приятный штрих, как и поддержка популярных систем контроля версий вроде Git, Mercurial и SVN. Благодаря наличию CSSLint и JSBeautify это одна из красивейших сред разработки.

Codeanywhere

Ещё один инструмент для создания приложений, который часто возглавляет списки лучших - Codeanywhere. Эта дружественная облачная IDE поддерживает подсветку кода HTML, CSS, JavaScript, PHP, MySQL и других языков. Благодаря наличию приложений для iOS, Android и BlackBerry, с помощью Codeanywhere программисты работают где угодно.

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

Система платная, но есть бесплатный тарифный план.

Eclipse Che

Eclipse Che - облачное рабочее пространство разработчика и встроенная IDE. Che предоставляет удалённую платформу с открытым исходным кодом для многопользовательского создания приложений.

Основные возможности:

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

Eclipse Che имеет две сборки - однопользовательскую и многопользовательскую. В первой нет компонентов, которые предоставляют мультиарендность и разграничение прав доступа. В этом случае сервер остаётся без защиты, но для локальной разработки - это хороший выбор.

Многопользовательская предоставляет мультиарендность. Учётные записи пользователей и рабочие места изолированы, а для регистрации, управления и аутентификации используется механизм KeyCloak . Permissions API регламентируют доступ к объектам вроде пространств, стеков и организаций. Сведения о пользователях хранятся в базе данных, поддерживающей миграцию (PostgreSQL).

Характеристики:

  • Редактор исходного текста программы
  • Менеджер проекта
  • Программатор Flash микроконтроллеров
  • Поддерживает логику внутрисхемной отладки во всем диапазоне рабочих частот микроконтроллеров компании Cygnal
    Отслеживание точек прерывания в реальном масштабе времени
    Превосходит по качеству отладку при помощи ICE - кристаллов, переходных колодок, кабелей и разъемов

  • Память условных точек останова
    Возможность просмотра и изменения содержимого памяти и регистров
    Режимы пошагового и непрерывного выполнения программы
  • Мастер конфигурации MCU

Интегрированная среда разработки (IDE) компании Cygnal содержит все необходимые инструментальные средства для разработки и отладки Ваших проектов. IDE осуществляет обмен данными по JTAG со встроенной отладочной логикой микроконтроллеров C8051Fxxx, обеспечивая таким образом возможность разработки и отладки прикладной программы при помощи одного стандартного промышленного микроконтроллера, а также позволяя провести внутрисхемное программирование микроконтроллера, установленного в уже законченное устройство. Для всего этого не требуется никаких дополнительных микросхем памяти программ или данных или каких- либо дополнительных линий связи.

IDE компании Cygnal позволяет производить отладку прикладных программ, написанных на С или ассемблере, в пошаговом режиме (включая обработку источников прерывания), в режиме выполнения до контрольной точки, в режиме выполнения до точек останова, а так же производить контроль и изменение содержимого регистров, памяти данных и памяти программы.

IDE компании Cygnal может работать под управлением операционных систем Windows 95/98/Me и Windows NT. Обмен данными между IDE и отлаживаемым микроконтроллером осуществляется по последовательному порту компьютера при помощи соединительного интерфейсного кабеля JTAG. Необходимый для этого адаптер интерфейса последовательного СОМ порта RS232 в интерфейс JTAG сдержится в комплекте.

В меню IDE Help >About вы можете убедиться, что вы пользуетесь последней версией интегрированной среды разработчика. Обновления и дополнительную информацию можно найти в интернете по адресу http://www.cygnal.com .

Редактор исходного текста

Редактор имеет все функции стандартного редактора Windows, включая функции вырезки, вставки, копирования, отмены/ восстановления и закладки. Выделение цветом синтаксиса команд поддерживается и для 8051 ассемблера, и для С. Вы можете расширить список выделяемых ключевых слов, а так же изменить цвет выделения. Кроме того, Вы можете изменить шрифт, цвет текста и изменить позиции табуляторов.

Менеджер проекта

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

Интегрированный 8051 макроассемблер

В среду встроен 8051 макроассемблер. Ассемблер позволяет из файлов исходных текстов, совместимых со стандартом Intel MCS-51, создавать Intel hex файлы. Ассемблер также выдает всю информацию, необходимую для отладки исходного текста программы.

Программатор Flash

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

Облегчение отладки

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

Отладка исходного текста программы

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

Окна регистров и памяти данных

В этих окнах отображается содержимое регистров и памяти данных. Окна обновляются на каждом шаге, при этом изменившиеся данные выделяются цветом. При редактировании содержимого окон происходит изменение состояния соответствующих регистров и ячеек памяти данных.

Окно памяти программы

Окно памяти программы позволяет просматривать и редактировать содержимое Flash памяти программы микроконтроллера.

Окно дизассемблера

Это окно может потребоваться для отображения одной С команды. В этом окне в пошаговом режиме отображаются команды на языке 8051 ассемблера при исполнении программы, написанной на С.

Контрольные точки

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

Условные точки останова

Условные точки останова позволяют остановить выполнение программы при наступлении определенного состояния или при определенном изменении состояния памяти данных или регистров.

Поддержка средств разработки других производителей

Среда поддерживает программирование Flash памяти и отладку исходных текстов программ, написанных на Intel OMF-51 совместимых языках, позволяя таким образом использовать средства разработки других производителей.

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

Мастер конфигурации

Мастер конфигурации автоматически генерирует команды или блоки команд, инициализирующие соответствующие периферийные устройства. При выборе какого- либо устройства, мастер конфигурации автоматически генерирует блок команд, инициализирующий работу этого устройства, одновременно подключая его к порту ввода- вывода.

11245 Kb Програмное обеспечение IDE 1.80 Интегрированная среда разработки компании Cygnal
378 Kb описание интегрированной среды (IDE) разработки компании Cygnal

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

Как мы отмечали выше, сервисы сообщений используются для создания корпоративных 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

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

Программ, предназначенных для написания и редактирования исходного кода веб-приложений, великое множество. Современные и удобные редакторы способны закрывать забытые кавычки, расставлять отступы, скобки и даже дописывать за программистом команды. Мощные IDE сами обновляют содержимое файлов на удаленных серверах и хранят историю изменений проекта. Подобрать идеальный продукт – задача почти невыполнимая. Сберечь время поможет подборка самых популярных решений.

Для удобства все инструменты разбиты на три группы:

  • редакторы кода – относительно простые программы, основная функция которых состоит непосредственно в создании и изменении файлов с программным кодом;
  • многофункциональные интегрированные среды (IDE) – мощные инструменты, объединяющие десятки прикладных функций;
  • облачные IDE – функциональность десктопных сред для веб-разработки в виде интернет-сервиса.

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

Редакторы кода

Komodo Edit

Мини-версия полноценной среды разработки Komodo IDE по умолчанию предоставляет базовые функции редактора, а подключаемые расширения добавляют поддержку синтаксиса разных языков и полезные опции, например, компиляцию .

Возможности Vim:

  • огромное количество дополнений;
  • многоязычность;
  • поддержка множества файловых форматов;
  • мощные поисковые инструменты;
  • возможность бесконечно отменять внесенные изменения;
  • интеграция с большим количеством сторонних приложений.

GNU Emacs

Еще один базовый редактор кода Linux-систем GNU Emacs сложнее, чем тот же Vi, но при этом мощнее и имеет большую функциональность:

  • несколько режимов редактирования, синтаксическое выделение кода для разных языков;
  • подробная документация и руководство для начинающих пользователей;
  • поддержка кодировки Unicode;
  • использование визуального интерфейса или диалекта Emacs Lisp для тонкой настройки рабочей среды;
  • хороший отладчик;
  • дополнительные удобства, например, почтовый клиент, планировщик;
  • менеджер расширений.

Adobe Brackets

Относительно молодой кодовый редактор Brackets сделал основной упор на визуализацию и упрощение работы с CSS-препроцессорами. Проектирование веб-страницы прямо в браузере становится очень быстрым и легким делом. Brackets – отличное решение для программистов и дизайнеров, имеющих дело с пользовательскими интерфейсами и фронтендом в целом.

Основные функции:

  • визуализация HTML-кода и стилей, возможность просмотра изменений в режиме реального времени и мгновенного редактирования;
  • работа с PSD-файлами, возможность импорта изображений без использования Adobe Photoshop;
  • удобная компиляция CSS-препроцессоров.

Visual Studio Code

Многофункциональный, но компактный кодовый редактор VSC изначально был предназначен для обработки JavaScript и его расширений, но плагины позволяют добавить другие популярные языки, например, PHP и C#. Программа отлично поддерживает платформу .

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

В редактор встроен отладчик кода.