Wednesday, August 19, 2009

e4 overview

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

Кунг фу панда.


Как то читая рассылку новостей, я увидел, что eclipse е4 вышел в свет и можно его опробовать. Закатав рукава, принялся за дело. Как обычно, не все шло как хотелось бы. Скачав kit, я попробовал разархивировать с помощью Zip'а. Но увы. В процесе раззиповики я получил ошибку, говорящую о том что Zip не может извлечь какой то файл длина имени которого больше 250 символов. Не мудурствуя лукаво, я воспользовался 7 Zip'ом, который в oтличие от конкурентов, справился с задачей.

В конечном счете, перед моими глазами предстал сплэш скрин


И так, начнем-с!

XWT. Что это такое? XWT (XML Windowing Toolkit) это набор инструментальных средств, использующий XML для построения графических компонентов, дающий возможность писать удаленные (remote) аппликации. Если вы знакомы с JSF технологией, тогда процесс обучения будет минимальаным. Как это работает? XML содержит в себе графическое представление самого компонента, связанного с серверным bean-компонентом. Это дает четкое разделение между UI представлением и бизнес-логикой. С другой стороны, XWT поддерживает использование JavaScript, что называется Out-of-the-box. Больше не нужно латать, ставя плохо сидящие заплатки. Очень гибкая технология. По правде говоря, я долго ждал такого решения. Мне кажется, что на данный момент это лучшее архитектурное решение.

RAP, означает Rich Ajax Platform
Многие из нас знают, что с недавнего времени появились требования о создании информационной технологии потребляющей минимальное количество энергии. Это значит, что мы должны создавать програмное обеспечение способное работать на дешевых компьютерах и потребляющие низкое количество электро-энергии. Кроме того, классические веб-аппликации интенсивно используют сетевой трафик. Поэтому стали использовать Ajax. RAP делает возможным создание веб клиентов по подобию Eclipse'a.
Это позволяет создать event-driven дизайн веб аппликации. Также возможно программировать используя third-party Java API'ы. Например, вы можете написать приложение выглядящее как SWT, но бегущее на вебе. То есть, написав RCP приложение, можно с минимальными усилиями переделать его на веб аппликацию. Однажды написанное, запускается везде. Вот такая мантра получается.

JavaScript.
Вы когда-нибудь пытались написать веб 2.0 приложение используя social API'ы? Некоторое время тому назад Google объявил о определении общего API для social аппликаций. Возможно вы знаете эти сайты: LinkedIn, MyFaces, Facebook и даже YouTube. Это дает возможность пользоваться множеством веб 2.0 платформ, не тратя много времени на изучение их API'ов.
Е4 предоставляет поддержку для написания плагинов на разных языках программирования, главным образом использование JavaScript, для написания банделов (пакетов) в Eclipse'е.
Созданные JavaScript бандели бегут на вершине OSGi фрэймворка, ими можно манипулировать как снаружи, так и изнутри других банделей. Также есть возможность инсталировать бандели, инспектировать состояние системы, знать и управлять стэйтами частного банделя. Правда есть небольшая разница в packaging'е. Вместо использования jar'а, здесь используется JSON файл.


В завершение обзора, хотелось бы сказать о том, что не понравилось в этом релизе:
- Отсутствует shortcut toolbar;
- Изчезла функциональность ответственная за уменьшение/увеличение views

Не плохо было бы узнать ваше мнение о том, что вам понравилось или не понравилось в этом блоге. Всего хорошего и удачи.