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

JBuilder 1.0

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

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

Borland также обеспечивает серьезную поддержку JavaBeans. С помощью панели BeansExpress в галерее объектов мне легко удалось создать новый компонент Beans и добавить его к расширяемой палитре компонентов. Данная версия JBuilder содержит более 100 готовых компонентов JavaBeans, в том числе их исходный код. Borland также включает в комплект поставки компоненты JavaBeans, разработанные сторонними фирмами. Если необходимо внести в программу данные, JBuilder облегчает эту задачу с помощью JDBC. Можно просто перетаскивать мышью компоненты данных на панель визуальной разработки, а затем определять JDBC-соединение в панели свойств.

PowerJ 2.0

Интегрированная среда PowerJ обеспечивает меньшую свободу для маневров, поскольку она открывает отдельные окна для каждого представления (view) проекта. То же самое происходит, когда она переключается между средой визуальной разработки и исходным кодом. Это засоряет экран, а на открывание и закрывание окон приходится тратить много времени. В отличие от JBuilder при непосредственном изменении исходного текста или при внесении исправлений в окне визуальной разработки соответствующие обновления в других окнах происходят с некоторой задержкой.

Так же как и JBuilder, PowerJ обеспечивает мощную поддержку JavaBeans. В состав продукта входит более 200 компонентов JavaBeans с исходными текстами. И хотя создавать компоненты JavaBeans с помощью PowerJ достаточно легко, средство BeansExpress из JBuilder обеспечивает более удобную ориентацию в среде разработки.

Подобно JBuilder, PowerJ также позволяет включать в программу элементы данных и быстро определять JDBC-соединения с базами данных.

PowerJ вполне сравнима с Jbuilder и в отношении гибкости поддержки последних версий JDK компании Sun, а также библиотек классов Java Foundation Classes (JFC) и Application Foundation Classes (AFC). Однако Sybase удалось превзойти Borland в области корпоративных функций. PowerJ обеспечивает ряд функций групповой разработки, например контроль версий, призванных упростить ведение крупных проектов. В качестве еще одного преимущества PowerJ необходимо упомянуть, что в комплект его поставки входит сервер транзакций Jaguar CTS. Это ПО промежуточного уровня, с помощью которого можно достаточно просто создавать из компонентов JavaBeans мощные приложения, например, для обработки электронных платежей.

Visual Cafe for Java

С помощью Visual Cafe компании Symantec мне удалось создать несколько простых приложений, апплетов и компонентов JavaBeans. Среда разработки, организованная в виде иерархической древовидной структуры, облегчает перемещение по ее различным компонентам. Оконный интерфейс с вкладками помогает переключаться между несколькими представлениями проекта. Модуль Forms Designer обеспечивает интегрированные окна для редактирования исходного кода и визуальной разработки. Однако для переключения между этими двумя окнами, пожалуй, не помешало бы наличие структуры вкладок, такой как в JBuilder. Вместо этого Visual Cafe предоставляет два отдельных окна: одно для редактирования исходного текста, другое - для визуального проектирования.

Как и конкурирующие продукты, Visual Cafe обеспечивает простое визуальное проектирование методом перетаскивания компонентов мышью. Используя имеющуюся палитру компонентов, я смогла создать простое приложение регистрации заказчиков. Новички в программировании на Java наверняка оценят средства графической разработки Visual Cafe как хорошую стартовую площадку.

Visual Cafe - это, безусловно, самое мощное средство разработки на Java с точки зрения компиляции и отладки программ. Например, компиляция одного и того же кода в Visual Cafe осуществляется значительно быстрее, чем при использовании VisualAge.

Средства интеграции с базами данных в Visual Cafe не так сильны, как в VisualAge и PowerJ. Visual Cafe обеспечивает "естественный" доступ к базам данных Oracle, Sybase, Informix и Microsoft, а также поддержку ODBC. Однако доступ к базам данных через JDBC предоставляется только с помощью входящего в поставку дополнительного средства, называемого dbAnywhere. (Следующая версия Visual Cafe, по утверждению представителей Symantec, будет иметь встроенную поддержку JDBC.)

Visual Cafe не обеспечивает достаточно серьезных средств интеграции Java-клиентов с "унаследованными" базами данных и системами обработки транзакций. Как и Borland, Symantec обещает усовершенствовать возможности такой интеграции (например, обеспечить поддержку RMI) в следующей версии продукта.

VisualAge for Java

Используя IBM VisualAge, мне удалось создать такое же приложение регистрации заказчиков, как и с помощью Visual Cafe, несколько простых апплетов и компонентов JavaBeans. И хотя в VisualAge, пожалуй, неплохо организовано интегрированное хранилище компонентов проекта, пользовательский интерфейс производит впечатление не очень простого и даже несколько запутанного - подобно Sybase PowerJ.

Работать в обоих окнах достаточно легко; кроме того, мне понравилось графическое средство разработки Composition Editor. С его помощью можно легко перетаскивать мышью компоненты из имеющейся палитры. VisualAge позволяет выполнять инкрементную компиляцию, но делает это значительно медленнее, чем Visual Cafe. Кроме того, хоть мне и удалось менять логику в моей программе регистрации заказчиков в процессе отладки и тестирования, обнаружилось, что Visual Cafe обеспечивает значительно более мощный набор отладочных средств.

А вот где VisualAge действительно превосходит все конкурирующие продукты - так это в области средств коллективной разработки. Для этого в VisualAge включены такие важные средства, как общее хранилище элементов проекта и средства контроля версий. (Symantec обеспечивает подобные возможности в Visual Cafe с помощью продуктов сторонних разработчиков и слабо интегрированных дополнительных модулей.)

Другая уникальная особенность VisualAge - это наличие средств интеграции Java-клиентов с "унаследованными" базами данных и системами обработки транзакций. Он обеспечивает интегрированную поддержку JDBC и интерфейс Java External Call Interface для доступа к системе запросов мэинфреймов CICS на S/390, а также RMI-доступ к серверным приложениям на Java или С++.

Для проверки этих возможностей я создала два тестовых приложения. В одном из них для доступа к внешним данным использовался интерфейс JDBC, а в другом - мой Java-клиент взаимодействовал с серверным приложением, написанным на С++ через RMI. Интегрированная поддержка JDBC и RMI - несомненно, большое достоинство продукта.

Резюме

Испытав все четыре продукта, я пришла к выводу, что отдать предпочтение какому-то одному из них очень сложно. Все они обеспечивают прекрасную среду для разработки приложений на Java, хотя и отличаются друг от друга организацией пользовательского интерфейса и наличием дополнительных возможностей. Все зависит от того, какие критерии для вас наиболее важны. Самый интуитивный и удобный пользовательский интерфейс, на мой взгляд, обеспечивает JBuilder компании Borland. Если вы собираетесь писать на Java большие приложения, то, возможно, вам следует выбрать продукт, снабженный наиболее сильными средствами отладки. В этом случае я бы порекомендовала Visual Cafe компании Symantec. Тем, кого в первую очередь интересуют возможности коллективной разработки, предстоит сделать выбор между PowerJ компании Sybase и VisualAge от IBM. И наконец, если вам необходимо организовать доступ из Java-программ к базам данных на мэйнфреймах, то явное преимущество здесь за VisualAge. В общем, выбор за вами.


Подводя черту

JBuilder 1.0, Professional Edition - хорошо спроектированное и интегрированное средство разработки. Однако его текущей версии недостает корпоративных средств, например функции контроля версий, реализация которой ожидается в следующем квартале. PowerJ 2.0, Enterprise Edition силен своими средствами отладки, но снабжен менее удобным пользовательским интерфейсом. VisualAge обеспечивает хорошо интегрированную поддержку доступа к корпоративным данным и системам обработки транзакций. Visual Cafe подобных средств не имеет, зато обеспечивает более интуитивный интерфейс, средства отладки здесь также мощнее.


JBuilder 1.0, Professional Edition

Достоинства: прозрачное одновременное обновление в окнах исходного кода и визуальной разработки; допускает шифрование исходного кода; расширяемая палитра компонентов.

Недостатки: отсутствует естественный доступ к базам данных; нет поддержки интеграции Cи++ и Java.

Производитель: Borland International (http://www.borland.com)

Цена: 300 долл.

Платформы: Windows 95, Windows NT (разработка); любая JVM-совместимая платформа (выполнение).


PowerJ 2.0, EE

Достоинства: допускает интеграцию C++ и Java; контроль версий, создание и многократное использование компонентов JavaBeans; поддержка Java Database Connectivity.

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

Производитель: Sybase (http://www.powersoft.com)

Цена: 1999 долл.

Платформы: Windows 95, Windows NT 4.0 (разработка); любая JVM-совместимая платформа (выполнение).


VisualAge for Java 1.0, EE

Достоинства: контроль версий и интегрированные средства коллективной разработки; "мастера" облегчают интеграцию с корпоративными базами данных и системами обработки транзакций; хорошие визуальные средства проектирования.

Недостатки: не очень интуитивный интерфейс.

Производитель: IBM (http://www.software.ibm.com/)

Цена: Enterprise Edition - 1995 долл.; Professional Edition - 99 долл.

Платформы: Windows 95, Windows NT 4.0 (разработка); любая платформа, совместимая с JVM 1.1 и выше (выполнение).


Visual Cafe for Java 2.0, DDE

Достоинства: интуитивный интерфейс; хорошие средства визуального проектирования; в комплект входят Web-сервер, средства создания, просмотра и публикации Web-документов.

Недостатки: отсутствуют средства интеграции с корпоративными базами данных и системами обработки транзакций.

Производитель: Symantec (http://cafe.symantec.com)

Цена: Database Development Edition - 499 долл.

Платформы: Windows 95, Windows NT 4.0 (разработка); любая JVM-совместимая платформа (выполнение).


А как насчет поддержки?..


JBuilder 1.0 Professional PowerJ 2.0 EE* VisualAge for Java 1.0 EE* Visual Cafe for Java 2.0, DDE**
JDK 1.0.2 и 1.1 Да Да Только 1.1 1.1, для 1.0.2 только импорт
Java Foundation Classes Да Да Нет Да
Application Foundation Classes Да Да Нет Нет
Компоненты ActiveX Нет Да дополн. модуль Нет
Инкрементная компиляция Да Да Да Да
Remote Method Invocation Нет Да Да Нет
Контроль версий Нет Да Нет Да
* EE - Enterprise Edition, ** DDE - Database Development Edition