...
...

Eclipse RCP проект за пять минут

Данный материал написан в ответ на скептические отзывы по поводу целесообразности использования языка программирования Java и в частности платформы RCP. Основным аргументом приводится медлительность и требовательность к системным ресурсам. Автором предлагается попробовать создать простейшее RCP-приложение и протестировать его на быстродействие и требовательность к ресурсам. Выводы каждый для себя делает сам.

Прошло сравнительно немного времени с момента публикации первой статьи о создании RCP-приложений ( сайт ), но за это время произошли существенные сдвиги в плане упрощения разработки основанных на данной технологии приложений. Кроме мастеров по созданию RCP-продуктов, появился мастер конфигурирования и экспорта продукта. Это существенно упрощает подготовку созданного RCP-продукта для развертывания клиентам. Доступен экспорт как в целевой каталог, так и в архив, который можно передать клиенту. Дополнительных инсталляторов не требуется — достаточно просто распаковать архив и создать ярлык на запускаемый файл. Есть возможность создания сборки сразу для нескольких операционных платформ. При желании можно произвести экспорт продукта в каталог и, используя содержимое последнего, создать автоматический инсталлятор для упрощения жизни неподготовленным пользователям. Для демонстрационных целей, а также в качестве отправной точки для собственных продуктов теперь доступны мастера по созданию приложений на основе нескольких шаблонов RCP- приложений — от простейшего "Hello RCP" до "RCP Mail Template". Создадим проект RCP-приложения в мастере создания проектов подключаемых модулей. Вызываем меню File -> New -> Project... и выбираем мастер Plug-in Development -> Plug-in Project из списка мастеров, нажимаем кнопку Next. 


Рис. 1. Вызов мастера создания проектов подключаемых модулей

Вводим имя проекта — например, "com.berdaflex.rcpdemo" — и нажимаем кнопку Next.

Рис. 2. Мастер создания проектов подключаемых модулей

Выбираем режим создания RCP-проекта. Для этого нужно выбрать в селекторе "Would you like to create a rich client application?" радиокнопку Yes и нажать кнопку Next.


Рис. 3. Выбор типа создаваемого приложения RCP application

Из списка доступных шаблонов выбираем шаблон RCP Mail Template и нажимаем кнопку Finish.


Рис. 4. Выбор шаблона RCP mail template

Мастером будет создан пример простого Eclipse RCP приложения. Теперь можно создать конфигурацию для развертывания продукта. Для этого вызываем мастер создания конфигурации продукта. Данный мастер вызывается из меню File -> New -> Other... -> Product Configuration.


Рис. 5. Выбор мастера создания конфигурации продукта

В первой закладке мастера создания конфигурации выбираем каталог проекта, вводим наименование файла конфигурации и способ инициализации параметров запуска продукта. Имя файла конфигурации продукта должно иметь расширение .product. Нажимаем кнопку Finish.


Рис. 6. Мастер создания конфигурации продукта

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


Рис. 7. Редактор конфигурации продукта

Нажав на ссылку Launch the Product, можно протестировать созданное RCP-приложение. Если возникнут проблемы с запуском, то, возможно, потребуется в закладке Configuration проверить, добавлен ли проект в список модулей, и нажать кнопку Add Required Plug-ins для добавления всех зависимых модулей.


Рис. 8. Пример приложения, созданного на основе шаблона RCP

Если созданное приложение успешно запускается, то можно экспортировать продукт для практического использования. Нажав на гиперлинк Eclipse Product export wizard редактора конфигурации продукта, вызываем мастер экспорта продукта. В диалоге мастера экспорта продукта требуется указать целевую папку экспорта или имя архивного файла.


Рис. 9. Мастер экспорта продукта

Тестовый RCP-продукт готов для тестирования. В зависимости от типа операционной системы состав модулей и запускаемых файлов может изменяться. Можно скачать и установить дополнительный eclipse RCP delta pack для экспорта продукта сразу на несколько целевых платформ. Размер конечного дистрибутива при этом несколько увеличится. Зато не потребуется создавать отдельные сборки под разные операционные системы.


Рис. 10. Содержимое папки конечного продукта

Немного статистики
Операционная системаРазмер созданного продуктаСреднее время холодного стартаСреднее время повторного стартаИспользование оперативной памяти
Linux Mandrake7,1 Мб6 с.3 c.19,1 Мб
Windows XP7,2 Мб8 с.4 c.27,1 Мб

Взяты средние значения трех замеров с рестартом системы после выполнения замера. Использовался компьютер следующей конфигурации: AMD Sempron(tm) 2300+ (1,58 GHz), 1.0 Gb RAM, — и Eclipse SDK 3.2M6, J2SDK 1.5.0_6.

Рекомендуемые книги по технологиям проекта Eclipse

1. Eclipse Rich Client Platform: Designing, Coding, and Packaging Java Applications. By Jeff McAffer, Jean-Michel Lemieux. Publisher: Addison Wesley Professional. Pub Date: October 17, 2005. ISBN: 0-321-33461-2. Pages: 552.
Замечание. Очень хорошая книга по технологии Eclipse RCP.

2. The Java Developer's Guide to Eclipse. By Sherry Shavor, Pat McCarthy, John Kellerman, Jim D'Anjou, Scott Fairbrother. Publisher: Addison- Wesley. Pub. Date: May 2003. ISBN: 0321159640. Pages: 896.
Замечание. Очень хорошая книга по созданию подключаемых модулей.

3. Building Commercial Quality Eclipse Plug-ins By Eric Clayberg, Dan Rubel. Publisher: Addison WesleyProfessional.ISBN: 032142672X; Published: Mar 22, 2006; Copyright 2006; Dimensions 7x9-1/4; Pages: 864; Edition: 2nd.

4. Official Eclipse 3.0 Faqs. By John Arthorne, Chris Laffra. Publisher: Addison-Wesley Professional. Pub Date: July 2, 2004. ISBN: 0321268385. Pages: 384.

5. SWT: The Standard Widget Toolkit, Volume 1. By Steve Northover, Mike Wilson. Publisher: Addison Wesley. Pub Date: June 28, 2004. ISBN: 0- 321-25663-8. Pages: 592.

6. The Definitive Guide to SWT and JFace. By Robert Harris and Rob Warner. Publisher: Apress 2004. ISBN: 1-590-59325-1. Pages: 864. 

7. SWT/JFace in Action. By Matthew Scarpino, Stephen Holder, Stanford Ng and Laurent Mihalkovic. Publisher: Manning Publications Co. ISBN 1- 932394-27-3.

8. Contributing to Eclipse: Principles, Patterns, and Plug-Ins. By Erich Gamma, Kent Beck. Publisher: Addison Wesley. Pub Date: October 20, 2003. ISBN: 0-321-20575-8. Pages: 416.
Замечание. Единственная книга, переведенная на русский язык. К сожалению, перевод сделан безобразно, так что лучше читать в оригинале.

9. Eclipse in Action. By David Gallardo, Ed Burnette, Robert Mcgovern. Publisher: Manning Publications Co. ISBN 1-930110-96-0.

10. Eclipse 3 Live. By Bill Dudney. Published by SourceBeat, LLC, Highlands Ranch, Colorado. ISBN: 0974884316.

11. Eclipse: Step-by-Step. By Joe Pluta. Publisher: MC Press 2003. ISBN:1583470441.

12. Eclipse Cookbook . By Steve Holzner. Publisher: O'Reilly. Pub Date: June 2004. ISBN: 0-596-00710-8. Pages: 368.

13. Eclipse. By Steve Holzner . Publisher: O'Reilly. Pub Date: April 2004. ISBN: 0-596-00641-1. Pages: 334.

14. Eclipse Modeling Framework: A Developer's Guide. By Frank Budinsky, David Steinberg, Ed Merks, Raymond Ellersick, Timothy J. Grose. Publisher: Addison Wesley. Pub Date: August 11, 2003. ISBN: 0-13-142542-0. Pages: 720.

15. Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework. By Bill Moore, David Dean, Anna Gerber, Gunnar Wagenknecht, Philippe Vanderheyden. сайт ISBN 0738453161.

Для публикации и обсуждения вопросов по проекту "RCP файловый менеджер" создан форум, который доступен по адресу: сайт . На текущем этапе развития проекта идет сбор информации о статистике использования различных файловых менеджеров и наиболее востребованной функциональности для формирования детальных требований к разрабатываемому продукту.

Сергей Бердачук, berdachuk@berdaflex.com

© Компьютерная газета

полезные ссылки
Корпусные камеры видеонаблюдения
IP камеры видеонаблюдения