ОБЗОР
17.04.02

Обзор Oracle JDeveloper Release 9i

Источник: An Oracle White Paper May 2001
Опубликовано на сайте www.oramag.ru

 

Введение в JDeveloper Release 9i

Oracle JDeveloper является J2EE - средой разработки приложений е-бизнеса со сквозной поддержкой разработки, отладки и развертывания приложений. JDeveloper вооружает пользователей высокопроизводительными инструментальными средствами, типа самого быстрого в отрасли отладчика Java, нового профилировщика (программа сбора информации) и новаторского CodeCoach – инструмента для анализа производительности кода и его усовершенствования.

Чтобы поднять разработку приложений J2EE на более высокий уровень производительности, JDeveloper предлагает Business Component for Java (BC4J), основанную на стандартах, размещенную на серверной стороне инфраструктуру для создания масштабируемых, высокопроизводительных интернет-приложений.

Инфраструктура обеспечивает инструментальные средства конструирования и исполнительные сервисы для резкого упрощения задачи построения и многократного использования бизнес-логики. В этом обзоре вы познакомитесь с готовым к появлению JDeveloper Release 9i и его наиболее интересными новыми возможностями.

JDeveloper полностью покрывает весь цикл разработки

Java – это относительно новый язык, и среды разработки догоняют традиционные инструментальные средства клиент/сервер с точки зрения полноты и богатства возможностей. Первоначально в состав интегрированной Java-среды разработки входили визуальный редактор, редактор кода, компилятор, отладчик и несколько мастеров.


Рисунок 1. Полный жизненный цикл для разработки приложений в среде JDeveloper

Сегодня выпуск 9i JDeveloper предлагает полную поддержку жизненного цикла разработки приложений, как это изображено на рисунке 1.

В типичном сценарии разработчик запускает JDeveloper, проверяет приложение с помощью системы управления исходным текстом и начинает цикл разработки. Разработчики UML-модели (UML modelers) помогают разработчику при конструировании приложения и, возможно, при генерации исходного текста. JDeveloper обеспечивает визарды (wizards) и редакторы – и визуальный, и кодоцентрировнный (то есть, работающий с исходным текстом программы, прим. пер.) – чтобы добавить функциональные возможности и различные инструментальные средства для компиляции, проверки, отладки и настройки приложения. Когда разработчик сочтет себя удовлетворенным, он может еще раз для проверки вернуть приложение назад в систему управления исходным текстом и, после достаточного испытания, развернуть его (приложение) в предназначенном ему месте.

Версия 100 % Java JDeveloper работает в средах Windows, Linux и Solaris. Выпуск 9i JDeveloper был полностью переписан на Java. JDeveloper версии 3.x, а более ранние выпуски были гибридом Java и других языков программирования и работали только в среде Windows.


Рисунок 2. Версия 100 % Java Oracle JDeveloper

Этот выпуск JDeveloper выполняется на любой платформе, на которой имеется виртуальная машина Java (Java Virtual Machine – SDK 1.3 и более поздние версии) и будет поддерживаться на Windows NT, 2000 и XP, Linux и Solaris.

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

JDeveloper полностью расширяем через API Addin, что позволяет любому добавлять в продукт функциональные возможности.

Разработка и развертывание приложений J2EE

Выпуск 9i JDeveloper значительно усиливает платформу J2EE и поддерживает самые последние стандарты, включая EJB 1.1, JSP 1.1 и Servlets 2.2. При построении J2EE-приложений и их упаковке в виде стандартного архива, который можно развернуть на любом J2EE-сервере, разработчики могут выбирать между визардами, визуальными редакторами и редакторами кода. Чтобы сделать возможной дистанционную отладку Java-кода, выполняющегося на J2EE-сервере, отладчик JDeveloper использует стандартный протокол JPDA. См. ниже в разделе об отладчике для выяснения ограничений операционной системы отладчика.

Oracle Business Component для Java

Чтобы помочь разработчикам строить устойчивые, живучие J2EE-приложения, компания Sun Microsystems создала систему J2EE Blueprints. В ее рамках предлагается набор моделей и образцов конструкций. Используя эти blueprints, разработчики обычно пишут много кода, чтобы построить законченное приложение для е-бизнеса.

Oracle JDeveloper предлагает Business Components for Java, инфраструктуру J2EE, которая реализует эти образцы конструкций. Она обеспечивает разработчикам огромное увеличение производительности, обрабатывая отображение Object/Relational и связь между различными уровнями в архитектуре J2EE. Business Component for Java обеспечивают и декларативные, и кодоцентрические инструментальные средства для определения бизнес-логики, в то же время заботясь о лежащей в основе инфраструктуре.

Интеграция с Oracle9i Application Server

В то время как JDeveloper поддерживает разработку, пакетирование и отладку приложений на любом J2EE-сервере, он делает развертывание на Oracle9i Application Server в высшей степени производительным, обеспечивая автоматическое развертывание “одним щелчком” изнутри инструментального средства.

Одной JAVA не достаточно

За эти годы Java стала Интернет-языком программирования, завоевав доверие миллионов разработчиков во всем мире. Вот некоторые из причин этой популярности – независимость от платформы, простота и мощная компонентная модель.


Рисунок 3. Java, XML и SQL – убийственная комбинация

Oracle Business Components for Java реализует лучшие J2EE-методы и дает разработчикам возможность продуктивно выпускать масштабируемые приложения е-бизнеса.

Чтобы строить полные приложения е-бизнеса, разработчикам понадобится больше, чем только Java. Oracle очень сильно верит в комбинацию Java, SQL и XML и вкладывает в ее развитие большие средства. Java используется для программирования бизнес-логики и логики представления, SQL – для взаимодействия с базой данных, а XML – для передачи информации между слабосвязанными приложениями.

JDeveloper помогает разработчикам строить приложения е-бизнеса, использующие Java, XML, HTML, SQL и PL/SQL и обеспечивает различные редакторы кода и визуальные инструментальные средства для каждого из этих языков.

Инструментальные средства XML

Набор для разработчиков XML (XML Developers Kit – XDK) интегрирован с JDeveloper и предлагает Java-разработчикам много утилит, чтобы с их помощью обрабатывать, создавать и преобразовывать XML. Например, с помощью XSQL Servlet разработчики могут делать запросы и манипулировать информацией базы данных, генерировать XML-документы, преобразовывать их, используя таблицы стилей XSLT, и делать их доступными в Web.

В выпуске 9i JDeveloper имеется новый, управляемый схемой XML-редактор. Схема XML определяет структуру XML-документа и используется в редакторе для проверки правильности XML и помощи разработчику при наборе. Эта возможность называется Code Insight и обеспечивает список допустимых альтернатив для элементов XML или атрибутов документа.


Рисунок 4. Редактор XML с Code Insight

К другим возможностям XML относятся высвечивание элементов синтаксиса, проверка синтаксиса, средство просмотра древовидной структуры и манипулирование с использованием инспектора свойств (property inspector).

JDeveloper предлагает утилиты для создания, анализа, генерации и преобразования XML-документов.

Инструментальные средства SQL и PL/SQL JDeveloper выпуска 9i обеспечивают расширенные возможности для управления подключениями и просмотра объектов базы данных, в дополнение к новому редактору PL/SQL и средству просмотра SQL.

Управление подключениями

JDeveloper имеет концепцию многократно используемого подключения, в котором сохраняются подробности подключения к базе данных, включая имя пользователя, пароль, номер порта, имя главной машины (hostname) и идентификатор базы данных. Подключение может многократно использоваться в нескольких точках цикла разработки, если вы:

Просмотр объектов базы данных

Подключения в навигаторе проектов предлагают представления нескольких типов объектов схемы в базе данных:

JDeveloper имеет специализированное средство просмотра для каждого из этих типов объектов, которое отображает детали выбранного объекта. Например, средство просмотра таблиц показывает информацию о столбцах таблицы.


Рисунок 5. Просмотр объектов базы данных

PL/SQL-редактор

PL/SQL-редактор позволяет редактировать PL/SQL-объекты: процедуры, функции и пакеты. При использовании PL/SQL-редактора разработчики работают непосредственно с исходным текстом в базе данных. Чтобы скомпилировать PL/SQL-код, JDeveloper просто посылает новый исходный текст в базу данных и предоставляет серверу заботиться о трансляции. Если в коде имеются ошибки, они отображаются в JDeveloper.

Средство просмотра SQL

Средство просмотра SQL предоставляет окно, в котором могут выполняться SQL-предложения. Использование средства просмотра SQL подобно использованию клиентской программы SQL типа SQL*PLUS или SQLPlus Worksheet. Помимо отображения результатов выполнения данного SQL-предложения, средство просмотра SQL может также отображать план его выполнения.


Рисунок 6. Средство просмотра SQL

Моделирование UML становится широко распространенным

В связи с тем, что объединенный язык моделирования (United Modeling Language – UML) становится фактическим стандартом для моделирования разработки программного обеспечения, JDeveloper обещает включить его полную поддержку. Обеспечение возможностей UML в JDeveloper будет выполнено поэтапно, при этом в выпуске 9i появятся два разработчика моделей UML:

Главной целью UML-моделирования в JDeveloper является поддержка разработки приложений электронного бизнеса с использованием полного потенциала Oracle9i Application Server и Oracle9i Database.

Class Modeler поддерживает моделирование и генерацию интегрированного кода для Oracle Business Components for Java (BC4J) и классов естественной Java с сильной интеграцией между моделью и кодом.

Activity Modeler особо нацелен на интеграцию приложений электронного бизнеса. Целевыми объектами генерации являются Oracle Advanced Queuing (AQ) и Oracle Workflow с доступом JMS и полезными нагрузками сообщений XML.

Разработчики модели JDeveloper поддерживают использование стандартного UML, к которому добавлены специфические для JDeveloper возможности. Кроме того, для обмена с другими инструментальными средствами UML они поддерживают XMI.

Разработчик моделей классов (Class Modeler)

Java-классы

Разработчики могут использовать Class Modeler, чтобы визуализировать и генерировать классы Java. Опция двухсторонней генерации автоматически синхронизирует код и модель независимо от того, сделаны ли изменения в редакторе кода или в Class Modeler. Средство обратного конструирования (reverse-engineering) позволяет разработчикам строить модели по существующему коду.

Oracle JDeveloper делает моделирование UML легко доступным для разработчиков Java.

Business Components for Java Developers могут также использоватьClass Modeler, чтобы визуализировать постоянные бизнес-компоненты, из которых собирается приложение е-бизнеса. Из этой модели JDeveloper выпуска 9i автоматически генерирует лежащую в основе реализацию, используя каркас BC4J. Входящий в JDeveloper Class Modeler дает возможность разработчикам генерировать полнофункциональные BC4J-приложения быстро, визуально и без программирования – непосредственно из UML-моделей.

Class Modeler реализует для BC4J UML-конфигурацию, обеспечивающую разработчиков визуальной средой программирования для определения компонентов BC4J-приложений. Такие компоненты включают экземпляры объектов, которые представляют постоянные бизнес-объекты в проблемной области.


Рисунок 7. Class Modeler

Разработчик моделей деятельности (Activity Modeler)

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

Activity Modeler позволяет разработчикам моделировать потоки бизнес-процессов и фиксировать дополнительные семантические данные для определения выполнимых процессов, маршрутизации и очередей. Процесс выражается в терминах действий, подсистем (которые исполняют действия в пределах разделов) и маршрутизации.

Улучшение качества кода

JDeveloper предлагает различные мощные инструментальные средства для улучшения качества Java-кода, определяя потенциальные проблемные области типа проблем с производительностью, утечек памяти и взаимных блокировок (deadlocks).

Дискретный профайлер выполнения

Дискретный профайлер выполнения (Execution Sampling Profiler) используется для локализации проблем с производительностью путем определения того, который из методов (процедур, ассоциированных с типом объекта, прим. пер.) в коде отнимает большую часть времени при выполнении. Профилировщик через постоянный интервал времени производит замеры и определяет, где в данный момент находится текущий поток выполнения. Все замеры подсчитываются и отображаются в конце сеанса профилирования.


Рисунок 8. Дискретный профилировщик выполнения

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

CodeCoach

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

Oracle JDeveloper предлагает мощные инструментальные средства для улучшения качества кода Java.


Рисунок 9. CodeCoach определяет, что было сделано слишком много расширений StringBuffer (буфера строк)

Профилировщик памяти

Профилировщик памяти (Memory Profiler) – это мощный инструмент для отслеживания утечек памяти. Он производит замеры через определенные интервалы времени и показывает пользователю, как и где на всем пространстве программы распределяется и освобождается память. В случае сложных проблем с памятью, комбинация Memory Profiler и инструментальных средств отладчика типа окон Heap и Loaded Classes может определить точный источник утечки.

Профилировщик событий

Профилировщик событий (Event Profiler) бывает очень полезен, когда приложение состоит из нескольких уровней. На более высоком уровне, чем Execution Sampling Profiler, этот профилировщик отслеживает продолжительность конкретных событий, независимо от того, где они выполняются. Например, JSP-приложение может запрашивать данные из BC4J-компонента, который в свою очередь задает запрос к базе данных. Event Profiler может легко просуммировать, сколько времени было потрачено на выполнение этого запроса, и каково оно в сравнении с продолжительностью других событий приложения.

Отладчик

Разработчики часто используют несколько потоков для обработки трафика в Java-программе, создавая тем самым вероятность взаимной блокировки. У отладчика имеется много новых возможностей, включая несколько новых типов контрольных точек и лучшую поддержку обнаружения взаимных блокировок. Окно Monitors (мониторинг) обнаружит блокировки между потоками и покажет вызвавший эту блокировку объект.

Замечание: профилировщики, инструментальное средство CodeCoach и некоторые из опций отладчика работают только под управлением Windows (NT, 2000 и XP). Вы можете, однако, использовать JDeveloper для Linux или Solaris и дистанционно отлаживать или профилировать приложение, которое выполняется на машине с Windows.

Управление версиями и размещаемые услуги

В выпуске 3.2 JDeveloper впервые появилось управление версиями с помощью Oracle Repository. В выпуске 9i опция Repository будет более сильно интегрирована в среду разработки. Более того, JDeveloper начнет поддерживать другие системы управления исходными кодами, например, WebDAV. WebDAV – это стандартный протокол для чтения и записи файлов в Web, и он представляется очень перспективной новой разработкой в направлении разработки размещаемых услуг.

Разработка JSP-приложений

JDeveloper версии 3.2 предлагает визарды и заказные тэги (метки) для построения JSP-приложений с BC4J. Эти заказные тэги обеспечивают гибкий и высокопроизводительный способ разработки Web-приложений.


Рисунок 10. Палитра компонент, отображающая тэги JSP

JDeveloper выпуска 9i существенно расширяет функциональные возможности в этой области, вводя:

Резюме

Выпуск 9i является первой 100 % чисто Java-версией Oracle JDeveloper и поддерживается для операционных систем Windows NT, 2000 и XP, Linux и Solaris.

Выпуск 9i JDeveloper полностью покрывает весь жизненный цикл разработки, от редактирования, компилирования, тестирования и настройки до развертывания и отладки. В этом выпуске расширены существующие возможности управления версиями и вводятся разработчики моделей UML. Чтобы строить законченные приложения е-бизнеса, JDeveloper предлагает поддержку широкого спектра языков программирования, включая Java, XML, HTML, SQL и PL/SQL.

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

Дополнительную информацию Вы можете получить в компании Interface Ltd.

Обсудить на форуме Oracle
Отправить ссылку на страницу по e-mail


Interface Ltd.
Тel/Fax: +7(095) 105-0049 (многоканальный)
Отправить E-Mail
http://www.interface.ru
Ваши замечания и предложения отправляйте автору
По техническим вопросам обращайтесь к вебмастеру
Документ опубликован: 17.04.02