Pull to refresh

Comments 14

Виноват, невнимательно прочел.
Спасибо огромное за статью, как раз на работе столкнулся с проектом на Eclipse RCP.
Over-engineering во всей своей красе.

По Eclipse RCP достаточно мало вакансий. На Dice.com при поиске по RCP/JFace/SWT суммарно наберётся порядка 30, на HH.ru порядка 5. По Swing больше в 5 раз, но после выхода JavaFX его перевели в maintenance mode. JavaFX к сожалению не работает под Mobile, да и полная Desktop кросс-платформенность обещает быть лишь к концу года.

Desktop Java следует по пути JavaME. Consumer/Business software сейчас смысл имеет делать только под HTML5(даже Silverlight & Flex признали «поражение»), иначе не видать Вам планшетов и мобильных устройств. CAD/GIS и прочие профессиональные вещи пока ещё проще делать под Desktop, но с ростом SVG, Canvas & WebGL и в этой нише произойдут изменения.
По вакансиям в России сказать ничего не могу, так как живу сейчас в Берлине, а тут как раз таки очень большое Eclipse сообщество, которое растет год от года. Если на первые Eclipse Day приходило до 50 человек, то последний раз было порядка 200 и это только местечковые мелкии мероприятия.

Swing и RCP нельзя сравнивать, так как первое, библиотека для создания графического интерфейса, а второе платформа позволяющая и предлагающая гораздо больше, чем интерфейс пользователя.

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

Несколько интересных ссылок:
Eclipse RAP — фреймворк позволяющий создавать веб и мобильные приложения
CDO — еще один интересный проект
Я скорее сравнивал SWT & Swing & JavaFX как базовые элементы. Для Swing есть Netbeans RCP, но по опыту — к тому времени, что его допилили у многих были уже собственные UI фреймворки/паттерны под Swing.

RAP надо было делать по принципу GWT, а не Wicket/Vaadin. Иначе, за исключением Wi-Fi соединения, это не юзабельно, и в standalone для маркетов не упакуешь.
Прошу прощения, неправильно вас понял. Касательно RAP, с одной стороны согласен, быстродействие оставляет желать лучшего, как и с Vaadin, но мои коллеги, к примеру выбрали RAP, так как при его использовании, не было «накладных расходов» на изучение новых фреймвороков или библиотек, те же компоненты, тот же во многом пользовательский интерфейс, что и в десктопной версии (хотя случай конечно надуманный, не часто приходится писать веб приложение, как дополнение к десктопному).
> (в 90% случаев RCP приложение соберётся на Windows, Linux и Mac)
Стоит отметить, что для каждой платформы необходимо отдельно экспортировать приложение (Eclipse Product), предварительно установив Eclipse Delta Pack для вашей версии Eclipse. Но стоит учитывать особенности каждой платформы, т.е. не все еще так как хотелось бы.
Из тех что помню:
. Элементарный элемент выбора даты с выпадающим календариком, под Linux выглядит ужасно. (я использую DateChooserCombo)
. В таблицах под Windows нет возможности многострочного текста (только если самому рисовать), хотя под Linux поддержка многострочности есть.
. нет поддержки анимированных gif (опять же приходится самому писать)


Также при написании приложения на базе Eclipse RCP, довольно просто можно использовать существующие возможности/плагины Eclipse в вашем приложении, например:
1. Система обновлений
2. Плагины Error Log, Internal Web Browser
и т.п.

Еще пару ссылок:
http://www.eclipse.org/swt/
http://www.eclipse.org/swt/snippets/
http://wiki.eclipse.org/JFaceSnippets
http://www.eclipse.org/nebula/
Все верно, абсолютно с вами согласен, для Windows необходима org.eclipse.swt.win32, для Mac org.eclipse.swt.cocoa (в качестве примера, нативные библиотеки для пользовательского интерфейса, конечно нужны). Выглядят и  работают некоторые элементы интерфейса по разному (хотя тот же GanttChart выглядет практически идентично в Windows и Mac).

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

image image image
мы используем target platform, в которой выбраны jar'ки для всех платформ + launch configs, в которых выбраны опять же jar'ки для всех платформ. Жизненно необходимо при разных ОС на ПК разработчиков.
Да тоже советую сразу ратобраться с концептом target platform.
Чтобы не менять (ломать) сборку каждый раз после обновления IDE ;)
UFO just landed and posted this here
туториал это хорошо, но с будущего летнего релиза основной веткой становится 4.*, а там — modelled ui и dependency injection во все поля :)
Не все сразу, надо же было с чего начинать, а так как топиков не было вообще, решил описать создание простого приложения с пользовательским интерфейсом. Если бы туториал был бы по четвертой версии, то он бы получился значительно больше.
Sign up to leave a comment.

Articles