В тази статия исках да говоря за това как да създавам приложения с помощта на Eclipse RCP (Rich Client Platform). Поводът за писането беше фактът, че в Хабре няма абсолютно никакви статии, които да описват тази платформа. Като пример ще създадем персонализирана форма за въвеждане; коректността на данните ще бъде проверена с помощта на рамката JFace Data Binding. За начало ще дам екранна снимка по-долу с това, което трябва да получим.

Какво е Eclipse RCP

Като начало все още е необходимо да се каже какво е Eclipse RCP. Затъмнениее среда за разработка, написана на Java, разработена и поддържана от Eclipse Foundation (чиито членове са IBM, SAP, Oracle, компании, предлагащи продукти, базирани на Eclipse RCP и участващи в развитието на екосистемата Google, RedHat, Adobe, Cisco, Intel). Eclipse RCPе набор от добавки за създаване на така наречените богати клиентски приложения. Всичко, което потребителят вижда при отваряне на Eclipse IDE, е плъгин, създаден на базата на тази платформа. Потребителят може да създаде свои собствени плъгини въз основа на огромен брой съществуващи и ако е необходимо, можете да намерите най-популярните рамки като Hibernate, Google Guice, Google Guava, JUnit, TestNG като плъгини. Също така си струва да се отбележи, че архитектурата на времето за изпълнение се основава на спецификацията на платформата за услуги OSGI, тази спецификация описва как да създавате и управлявате модулни приложения. Eclipse, както бе споменато по-горе, е написан на Java и е позициониран като крос-платформен продукт (в 90% от случаите RCP приложение ще бъде изградено на Windows, Linux и Mac). Всички добавки, които съставляват ядрото на платформата, и повечето добавки на трети страни се разпространяват под EPL (Public License на Eclipse). Потребителският интерфейс на RCP приложенията се основава на визуалните компоненти на SWT и JFace frameworks, както и на собствените уиджети на Eclipse. Фигурите по-долу показват компонентите на приложение, базирано на платформата RCP и структурата на самата платформа Eclipse.


Фигура 1 - Компоненти, използвани в приложението RCP (снимката е направена от този сайт)


Фигура 2 - Архитектура на Eclipse (снимка, взета от този сайт)

Плюсове и минуси на платформата
Основният въпрос е защо тази платформа е толкова добра и защо да я използвате за разработване на настолни приложения (между другото, възможно е да се разработват уеб приложения и приложения за мобилни платформи). Модулност, крос-платформа, многоезична поддръжка, безплатно, голяма сумасъществуващи добавки, библиотеки и рамки. Всичко това ви позволява да създавате приложения от търговски клас (в края на статията е дадена връзка към списък със съществуващи приложения, разработени на тази платформа). Недостатъците включват доста високо ниво на влизане, тъй като за да разработите сериозно приложение, трябва да знаете поне в общи линии как работи OSGI рамката, да можете да работите с SWT и JFace компоненти и джаджи. Освен това за рускоезичните разработчици ще бъде проблем да намерят всякакви материали или книги за рамките и библиотеките, споменати по-горе (връзките към намерените ресурси, включително руски, са дадени в края на статията), въпреки че конференциите са периодично се провеждат в Европа и САЩ, които се организират от участниците Eclipse Foundation, в Германия се издава специално списание, което говори за нови плъгини и съдържа много примери за тяхното използване, а също така има цяла серия от книги в Немски, който описва всички нюанси и тънкости на развитие. На английски можете да намерите специална серия от книги eclipse series от Addison-Wesley, можете също да намерите няколко книги от Apress. Но има много малко материали и книги на нашия роден език.

Приготвяме се да започнем

Инсталиране на необходимите добавки
Нека да преминем направо към създаването на нашето първо RCP приложение. За да работим, трябва да изтеглим сборката: Eclipse за RCP и RAP разработчициот официалния сайт. Ако Eclipse IDE вече е инсталиран, тогава можете да използвате мениджъра за актуализиране. Изберете Помощ->Инсталиране на нов софтуер от главното меню. В прозореца за инсталиране, който се показва, изберете от падащия списък сайта с актуализации, от които се нуждаем - download.eclipse.org/releases/indigo, ако няма такъв сайт в списъка, щракнете върху бутона Добавяне вдясно, в полето Име пишем - Indigo Update Site, в полето Местоположение - посочения по-горе адрес, щракнете върху OK (ако се появи съобщение при добавяне адресът - Дублирано местоположение, тогава адресът вече съществува в списъка с налични софтуерни сайтове, списъкът със сайтове за актуализиране може да се види в предишния прозорец за инсталиране, като щракнете върху връзката Налични софтуерни сайтове под падащия списък). След като изберете сайта за актуализиране, по-долу ще се появи дървовиден списък (ако е отметнато квадратчето Групиране на елементи по категория), отворете елемента Инструменти за общо предназначение и изберете Среда за разработка на приставки Eclipse, след това отворете елемента EclipseRT Target Platform Components и маркирайте приставката - Ресурси за разработчици на Eclipse RCP Plug-in, именно тези два плъгина ни трябват, за да създадем нашия проект. След това щракнете върху Напред два пъти, приемете лицензионно споразумениеи щракнете върху бутона Край; Това е всичко, инсталирането на необходимите добавки ще започне. След инсталирането ще бъдем подканени да рестартираме Eclipse, което ще направим.


Фигура 3 - Прозорец за инсталиране на плъгин

Създайте проект
След рестартирането изберете елемента File-> New-> Other в главното меню, изберете елемента Plug-in Development, след което в падащото меню изберете Plug-in Project.


Фигура 4 - Меню за избор на типа на създавания проект

Щракнете върху Напред, трябва да дадем име на нашия проект, нека се нарича first.rcp.application, щракнете върху Напред отново. В следващия прозорец трябва да посочим името на приложението, в полето Име ще напишем First RCP Application. Премахнете отметката от квадратчето Генериране на активатор, Java клас, който контролира жизнения цикъл на приставката; за нашите просто приложениене е необходим клас активатор. Нека оставим квадратчето за отметка на елемента - Този плъгин ще допринесе за потребителския интерфейс, тъй като нашето приложение ще съдържа потребителски интерфейс. Нека оставим третата опция Enable API Analysis без отметка. На въпроса - Искате ли да създадете богато клиентско приложение? отговор Да.


Фигура 5 - Прозорец за създаване на плъгин

Щракнете върху Напред, ще бъдем подканени да изберем шаблон за бъдещото приложение, изберете Здравей RCP и щракнете върху Напред.


Фигура 6 - Прозорец за избор на шаблон на RCP проект

В последния прозорец в полето за заглавие на прозореца на приложението напишете - Потребителска форма, в полето Клас на приложение - Моето приложение. Оставете квадратчето за отметка Добавяне на марка неактивно. Нека натиснете бутона Край. Ще бъдем помолени да преминем към перспективата за разработка на приставки, ще се съгласим с това предложение.


Фигура 7 - Прозорец за конфигуриране на шаблон на RCP проект

Структура на проекта
Така имаме структурата на новосъздадения проект.


Фигура 8 - Структура на проекта

Съдържанието на петте класа в пакета first.rcp.application не ни интересува в момента, мога само да кажа, че класът Моето приложениетова е по някакъв начин основният () метод на обикновена Java програма, този клас отговаря за това как ще бъде стартиран и как ще бъде спрян нашият плъгин. В клас ApplicationWorkbenchWindowAdvisor, можем да зададем размера на прозореца на приложението със следния ред код:
configurer.setInitialSize(нова точка(400, 300));
Можем също да видим, че лентата с инструменти и лентата на състоянието няма да се показват по подразбиране:
configurer.setShowCoolBar(false);
configurer.setShowStatusLine(false);
Последният ред задава заглавието на главния прозорец:
configurer.setTitle("Потребителска форма");
Клас ApplicationActionBarAdvisorотговаря за настройването на лентата с менюта на нашето приложение. Клас Перспективаотговаря за местоположението и размера на редакторите (редакторите) и изгледите (изгледите), които са в тази перспектива (перспектива), в RCP приложение трябва да има поне една перспектива.

Стартиране на проекта
За да стартираме приложението, което току-що създадохме, трябва да отидем в папката META-INF и да отворим файла МАНИФЕСТ.MF, ако внезапно сте го затворили (този файл се отваря по подразбиране при създаване на проект).


Фигура 9 - Редактор на свойства на RCP приложение

Този файл ни позволява да променяме много настройки на проекта, да свързваме допълнителни плъгини, да свързваме и управляваме разширения, да персонализираме изграждането на нашия плъгин и много повече. Ние сме в раздела Преглед, в раздела Тестване, щракнете върху връзката - Стартирайте приложение Eclipse, след малко прозорецът на нашето приложение ще се появи на екрана, затворете го и преминете към следващата стъпка.


Фигура 10 - Прозорецът на нашето приложение

Добавяне на изглед (изглед)

Добавяне на разширение
Нашата задача е да създадем изглед (изглед), върху който да поставим елементите на графичния интерфейс. Да се ​​върнем към файла. МАНИФЕСТ.MF, изберете раздела най-долу - Разширения. Виждаме, че имаме две разширения по подразбиране: org.eclipse.core.runtime.applications и org.eclipse.ui.perspectives. Първото разширение е свързано с нашия клас приложение. Моето приложение, ако изберем това разширение и разширим дървовидния изглед до възела first.rcp.application.MyApplication (run), ще видим, че полето за клас съдържа името на този конкретен клас. Връщайки се към основния възел на този списък, вдясно в секцията Подробности за разширението ще видим две полета, чиито стойности също можем да променим (няма да правим това сега): ID - идентификатор на приложение и Име - приложение име.

Второто разширение отговаря за настройката на перспективата на нашето приложение. Файл МАНИФЕСТ.MFни позволява да посочим, без да разглеждаме кода на класа Perspective, кои изгледи и/или редактори ще съдържа тази перспектива, тяхната позиция, размер и съотношение. Щраквайки върху това разширение и отивайки до дъщерния елемент, ще видим, че в секцията Подробности за елемента на разширението можем да посочим класа на перспективата, ID и името. Трябва да се отбележи, че такива промени, както е споменато по-горе, могат да бъдат направени чрез директно редактиране на кода на класа, който е свързан с това разширение и редактиране на файла plugin.xml, но не искаме да усложняваме създаването на нашия първи проект.


Фигура 11 - Раздел с разширения на нашия проект

Трябва да добавим ново разширение, за да създадем изгледа. За да направите това, щракнете върху бутона Добавяне и в прозореца, който се показва, в полето Extension Point filter въведете изгледи, трябва да има само едно разширение - org.eclipse.ui.views, изберете го и щракнете върху бутона Готово.


Фигура 12 - Прозорец за избор на ново разширение

В списъка с разширения трябва да имаме още едно, трето по ред разширение.

Преглед на персонализиране
Кликнете върху разширението, което добавихме Кликнете с десния бутонмишки, ще се появят контекстно меню, изберете New->view в него, като по този начин ще добавим елемент към нашето разширение (този елемент е изгледът, от който се нуждаем). Настройките за този елемент ще се появят от дясната страна. Първо, нека създадем клас за нашия изглед. Можем да направим това, като щракнем върху връзката клас*.


Фигура 13 - Преглед на настройките (изглед)

Ще се отвори стандартен диалог за създаване на Java клас, дайте му име - MainView; както виждаме, този клас е наследен от класа org.eclipse.ui.part.ViewPart, родителският клас за всички изгледи. Завършваме създаването на класа с натискане на бутона Finish. Остава много малко, след като създадем клас за нашия изглед, неговият код ще се отвори пред нас, ще създадем статична променлива, която ще съдържа идентификатора на този изглед, ще зададем каноничното име на този клас като идентификатор . Нека напишем следното:

публичен клас MainView разширява ViewPart(
публичен статичен окончателен низ ID = MainView.class.getCanonicalName();

}
Да се ​​върнем към файла МАНИФЕСТ.MF, отворете раздела Разширение, копирайте съдържанието на полето class* и го поставете в полето ID. Сега името на класа и идентификаторът на този изглед са еднакви, този трик е добра практика, тъй като винаги ви позволява бързо да намерите желания изглед и да разберете неговия идентификатор. В полето име* напишете - Потребителска форма. Създаден е целият изглед, остава да го асоциираме с нашата перспектива, тъй като самият изглед не може да се използва, с други думи, той трябва да принадлежи към някаква перспектива.

Настройка на позицията на изглед
Можем да извършим допълнителни манипулации, докато оставаме в редактора на разширението или да отворим кода на перспективния клас - Перспектива.java, което ще направим. В клас Перспектива, нека отидем на метода - createInitialLayout(), този методзадава първоначалната позиция на изгледите и редакторите. В метода напишете следните два реда код:
layout.setEditorAreaVisible(false);
layout.addStandaloneView(MainView.ID, true, IPageLayout.LEFT, 1.0f, layout.getEditorArea());
Първият ред казва на обекта за оформление, че не се нуждаем от област за редактиране, тъй като имаме само един изглед и нямаме редактори. Вторият ред добавя нашия изглед и като самостоятелен (standalone). Първият параметър е нашият ID на изгледа. Вторият параметър е булева стойност, която определя дали заглавието на нашия изглед (Потребителски формуляр) ще бъде показано или не. Третият параметър има за цел да посочи ориентацията на изгледа в перспектива, тъй като имаме един изглед и ще заемем цялото пространство на перспективата, тази стойност може да бъде всяка. Четвъртият параметър определя позицията на този изглед по отношение на други изгледи или редактори, тъй като в нашия случай само изгледът трябва да заема цялото пространство на перспективата. Последният пети параметър е идентификаторът на областта на редактора. Нека запазим промените си.
Изпълнение на приложението с добавения изглед
Да се ​​върнем към файла МАНИФЕСТ.MFи стартирайте нашето приложение отново, за да направите това, отидете в раздела Общ преглед, в секцията Тестване щракнете върху връзката Стартиране на приложение на Eclipse. Няма да видим голяма разлика с това как формата изглеждаше при предишното стартиране, добавен е само раздел с нашия изглед, потребителски формуляр.


Фигура 14 - Прозорецът на нашето приложение с добавения изглед

Това е всичко за днес, продължението ще бъде в следващата статия.

С какво IBM допринася за общността с отворен код за вас?

Марк Ериксън и Ангъс Макинтайър
Публикувана на 01.11.2001 г

Платформата Eclipse е предназначена за изграждане на интегрирани среди за разработка (IDE). Може да се използва за създаване на различни изчислителни решения от край до край за различни среди за изпълнение на програми. Когато избират архитектура, производителите на инструменти трябва да:

  • Равни условия и пълно разкриване на информация при липса на скрити API и интерфейси от инструмент към инструмент. Eclipse предлага платформа с отворен код за тази цел. За да се провери качеството, преносимостта и производителността на кода, публикуваните API се тестват от консорциум от свързани индустрии.
  • Свобода за разширяване на платформата, за да достигнете до нови възможности. Eclipse предоставя възможност за създаване на производни произведения, включително преразпределение на платформата. Използването на Eclipse позволява на разработчиците на инструменти да се съсредоточат върху собствените си основни компетенции и нови модели за технология за разработка.
  • Получавайте навременни отговори на искания за промени и подобрения на продукта, доставени по контролиран и организиран начин. Чрез сайта www.eclipse.org разработчиците могат да правят различни промени. Това се постига чрез съвместна работа и всякакъв вид помощ от страна на разработчиците в развитието на платформата.

Въпроси и отговори

    Какво е Eclipse.org?

    Eclipse.org е отворен общностен консорциум от доставчици на инструменти за разработка на софтуер. Общността е заинтересована да работи заедно за подобряване на средата за разработка и интеграцията на продуктите. Общността споделя общ интерес в създаването на такива продукти, които ще могат лесно да взаимодействат в различни среди чрез използването на plug-in технология. Чрез сътрудничество и разпространение на ключова технология за интегриране, доставчиците на инструменти, съвместими с Eclipse, могат да се съсредоточат върху собствените си области на експертен опит и създаването на нови технологии за разработка.

    Какво представлява платформата Eclipse?

    Основната идея на проекта Eclipse е да създаде "Apache за инструменти за разработчици". Това означава създаване на инфраструктура с отворен код, която предоставя много от основните услуги, от които се нуждаят разработчиците на софтуер. Това трябва да бъде „кутия с инструменти за разработване на кутии с инструменти“. Не само колекция от API, рамката на Eclipse ще се състои от реален код, създаден да върши реална работа.

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

    Защо IBM разпространява Eclipse като отворен код?

    Отвореният код е единственият начин да се осигури отворена платформа за интегриране на инструменти. Освен това има и други предимства от използването на отворен код.

    Основното от тези предимства е повторното използване на продуктите. Защо да възстановявате нещо, ако то вече съществува в работещ формат? Използвайки отворената платформа Eclipse, производителите на инструменти могат да се съсредоточат върху собственото си развитие, като предоставят инфраструктура за инструменти за изграждане на интегрирани среди за разработка (IDE). Както и да е, използването на чужд код започва да печели доверие.

    Изграждането на доверие във всяка нова архитектура или платформа отнема много време. Например, трудно е да се спечели доверието на разработчиците в изграждането на инструменти, които съдържат патентовани интерфейси, които ограничават използването на приложение в определена операционна система (напр. Windows). Освен това е трудно да се спечели доверието на производителите на инструменти, когато се предлагат различни нива на API различни ниваинструменти (например API на общността, които са различни от корпоративните API).

    Платформата Eclipse ви позволява да изградите доверие чрез предоставяне на изходния код на платформата.

    Осигурен е отворен код за всички API, без вътрешни, собствени или скрити интерфейси. Разработчиците, чието доверие печели дълго време, могат да видят кода и да направят съответните заключения. Доверете се на източника и правете иновации!

    Събирането на разработчици с отворен код също може да помогне за създаването на по-добър код. Когато си сътрудничат върху кода, създателите влагат допълнителни усилия в него. Такъв кодекс става отражение на тяхната работа, продукт на индивидуална и корпоративна репутация. Доверете се на източниците и затвърдете позицията си на пазара!

    Проект с отворен код, базиран на чисти спецификации, може да предостави код, който е по-лесен за разбиране. Интерфейсът описва (в термините на черната кутия) абстрактното поведение на компонент. Чрез изследване на изходния код разработчиците могат да анализират действието на кода ред по ред. Трудно е да се довериш на интерфейса на някой друг. Доверете се на източниците и проучете технологията!

    Отвореният код е по-лесен за отстраняване на грешки. Когато се открие грешка, прегледайте програмен кодпомагат за ускоряване на идентифицирането на причината за това. Това може да е ваша грешка или грешка на платформата и средата. Достъпът до изходния код анулира работата по отгатване на причината за грешката. Споделянето на проблеми във форумите ви позволява да споделяте вашите бележки с тези, които са запознати с подобни проблеми. Ако възникне проблем в често използван код с отворен код, е по-лесно да го коригирате или заобиколите. Доверете се на източниците, за да получите необходимата информация.

    Да се ​​работи само по сложна технология е доста трудно. Няколко производители на инструменти могат да си позволят да изследват нови технологии заедно. Доверете се на източниците, за да намалите риска!

    Доставчиците на инструменти идват и си отиват. Корпоративните разработчици искат да са сигурни в дългосрочната поддръжка на платформата. С наличния изходен код корпорациите могат краткосрочензапочнете и поддържайте бизнеса си работещ дълго време: Доверете се на източника, за да развиете бизнеса си!

    Гъвкавостта е основното свойство на Eclipse. С платформата Eclipse компонент, който не ви подхожда, може да бъде модифициран според вашите изисквания. Например, ако не сте доволни от редактора, създайте свой собствен или включете един от популярните редактори, изградени в пазара с отворен код, предлаган от платформата Eclipse. Търсите да свържете нова хостинг платформа със съществуваща поддръжка от край до край? Доверете се на източниците и създайте плъгини!

    И така, отвореният код, отворената общност и отворената платформа създават равни условия, от които малките и големите създатели на инструменти се нуждаят, за да поддържат проекти за разработка от край до край и да изследват нови хоризонти.

    Още ли се съмнявате?.. Благодаря на Франк Хекер за отличната му работа по изграждането на магазина с отворен код (вижте Ресурси за връзка).

    На какви платформи се предлага Eclipse?

    Eclipse е пуснат и тестван за Windows NT, Windows XP (бета), Windows 2000, Windows 98, Windows ME и Red Hat Linux версия 7.1. Технологията Eclipse е написана на езика Java, което я прави лесна за използване на широк набор от различни платформи.

    Ще бъде ли пренесен Eclipse на други платформи?

    Това е въпрос, който трябва да бъде решен, но това е красотата на платформата Eclipse. Създателите на инструменти могат да възприемат технологията Eclipse и да изследват нови граници с увереността на доказана в индустрията отворена платформа за инструменти.

    Каква е цената на платформата Eclipse?

    Платформата Eclipse се предлага под общия публичен лиценз. Подробностите за лиценза са достъпни на http://www.eclipse.org.

    Какво ще кажете за факта, че разработчиците на инструменти не са много нетърпеливи да се справят с изходния код и не могат да извлекат голяма полза от него?

    Достъпът до изходния код често ви позволява бързо да идентифицирате проблемите, да премахнете дублирането на работа и да ускорите завършването на работата по нова съвместима технология.

    Няма ли това да доведе до разделяне на продукта на несъвместими версии?

    Общността на Eclipse има правото да определя и одобрява "официални" версии на платформата Eclipse. Членовете на общността също могат да правят промени и допълнения за собствените си нужди. Въпреки това основите на кода са различни и създаването на персонализирана версия извън проект на Eclipse става все по-трудно. Цената за пренасяне на подобрения от "официалната" версия към нея също се увеличава. По този начин всички членове на общността на Eclipse са заинтересовани да работят заедно върху обща основна технология и инфраструктура на Eclipse.

    Ще бъдат ли предприети стъпки за определяне на „официална“ версия в продуктите за доставка (напр. като част от марка като „Eclipse Inside“)?

    Този въпрос се разглежда от борда на директорите на Eclipse.

    Какъв е рискът за потребителите при използване на отделни версии?

    Обикновено "официалната" версия на платформата Eclipse, след тестване и преглед, се публикува на www.eclipse.org. Тази версия се поддържа чрез Eclipse.org. Индивидуалните версии трябва да се поддържат напълно от доставчика, така че ползата от сътрудничеството с членове на общността се губи.

    Ще се притесняват ли производителите на инструменти, че технологията Eclipse с отворен код ще „развали“ друг код, ако го използват в собствените си проекти?

    Eclipse е лицензиран съгласно Общия лиценз за програмиране, който не ви позволява да „разваляте“ друг код, който извиква код на Eclipse, използвайки публични API.

    Какво ще кажете за неприятни неща, които потребителите могат да намерят в изходния код на Eclipse, като грешки?

    Разработката с отворен код увеличава шансовете за намиране и коригиране както на малки, така и на големи грешки. Те се откриват и коригират от първоначалния разработчик или членове на общността.

    Може ли разкриването на изходния код да разкрие поверителни планове и стратегии на конкурентите?

    Да, по същество ние споделяме стратегии с нашите конкуренти. Несъмнено има и по-значимо мнение. Разработчиците са уморени да интегрират инструменти само в своите приложения. Те са уморени да губят време в измисляне как да накарат инструментите да работят заедно в компютърна среда от край до край. С платформата Eclipse всеки може да се възползва от пълно разбиране за това как да интегрира IDE на индустриално ниво. Правим това единствено, за да опростим работата на крайния разработчик.

    Могат ли потребителите просто да използват изходния код на Eclipse и да разчитат на подкрепа от общността без адекватна възвръщаемост?

    Потенциално да, но рано или късно оперативната съвместимост ще донесе повече стойност на крайния потребител, отколкото може да донесе сама по себе си. Независимите изолирани разработчици постепенно ще потънат в забрава.

    Какво ще стане, ако конкурентите се опитат да „откраднат“ продукт с отворен код за собствените си цели?

    Такъв опит е възможен, но общността е защитена от Common Public License. Официални версииПлатформите Eclipse ще продължат да се пускат в бъдеще. Лицензът е структуриран така, че нито един продавач да не може незаконно да се възползва от продукта. Като работим заедно по проекта Eclipse, ние искаме да помогнем за създаването на истински равни условия за разработчиците на инструменти.

    Къде мога да намеря информация за интегрирането на инструменти в технологията на Eclipse?

    Има няколко бели книги на http://www.eclipse.org.

    Как работи платформата Eclipse и какви функции предлага?

    Платформата Eclipse е изградена на следните принципи:

    • Улесняване на хомогенната интеграция на вътрешни инструменти, както и между различни видоведоставчици на съдържание и инструменти.
    • Поддръжка за създаване на различни инструменти.
    • Поддръжка за неограничен брой доставчици на инструменти, включително независими доставчици на софтуер (ISV).
    • Поддръжка на инструменти за работа с всякакви формати (включително HTML, Java, C, JSP, EJB, XML и GIF).
    • Поддръжка на среди за разработка на приложения с и без графичен потребителски интерфейс (GUI).
    • Работи на широк набор от операционни системи, включително Windows и Linux.
    • Използване на популярността на езика Java за писане на инструменти.
  • IBM ще пусне ли изходния код на платформата Eclipse на отворената общност? Кога ще стане това?

    Да, изходният код вече е достъпен под Общия публичен лиценз. Много скоро IBM ще предаде Eclipse на временен борд на директорите, който ще управлява платформата Eclipse.

    Кой е във временния борд на директорите?

    Временният съвет ще бъде обявен на по-късна дата.

    Искам да се присъединя към общността. Как да го направя?

    Посетете www.eclipse.org.

    Как да станете член на съвета?

    Сътрудничете, допринасяйте, популяризирайте: предлагайте свой собствен код, идеи, продукти, корекции на грешки, споделяйте знания и опит.

    Как се поддържа платформата Eclipse?

    Поддръжката се предоставя чрез форума и електронната поща на доброволни начала, като се използват ресурси, признати от общността. Повече информация можете да намерите на www.eclipse.org

    Има ли поддръжка 24/7?

    Как се избира временният съвет на директорите?

    С ограничен персонал екипът на Eclipse може да взаимодейства само с избрани няколко компании, избрани да изградят платформата. Членовете на временния съвет на директорите се избират от компаниите, допринесли за развитието на платформата, засега експериментално. Изборът се основава на три критерия: членовете на борда трябва да използват Eclipse в компанията си; те също трябва да използват Eclipse за създаване на рекламни предложения; те трябва открито да поддържат Eclipse.org.

    Защо забавихте пускането на изходния код на Eclipse толкова дълго?

    Когато плановете на компанията да изпрати изходния код бяха разгледани внимателно, екипът за разработка искаше да се увери, че първата платформа е била старателно разработена и тествана. Изпробвахме няколко алтернативни строителни концепции, някои от които вече са на пазара. Впоследствие споделихме тези идеи с други доставчици на инструменти и ги подобрихме. Платформата Eclipse вече е готова за първото издание.

    Когато IBM пуска технология безплатно, означава ли това, че IBM вече не е ангажирана с технологията?

    IBM се ангажира да приеме платформата Eclipse и да я използва като основа за цялото семейство инструменти за разработка на софтуер от край до край на IBM, което е фамилията WebSphere Studio. Тези продукти се възползват само от използването на интегриран контрол на качеството, от вече легендарната поддръжка IBM продукти, както и нашия ангажимент към марката IBM. Те използват подобни интерфейси и са изградени върху технология, споделена с платформата Eclipse.

    Къде мога да намеря документация и информация за Eclipse?

    На уебсайта www.eclipse.org.

    Колко различен е Eclipse от .NET?

    .NET е създаден изключително за използване на платформи на Microsoft чрез патентован интерфейс, наложен от Microsoft. Разработчиците трябва да реагират на промените, случващи се в .NET. В един свят, описан като нещо повече от технология "wintel", платформата .NET е значителна болезнена точка. Компютърни проекти от край до край, които трябва да интегрират сървъри, работни станции, вградени устройства и преносими PDA устройства, работят в различни други силно напреднали и усъвършенствани среди за изпълнение. Това води до използването на много мощни процесорни архитектури и операционни платформи като OS/390, Linux и QNX.

    Платформата Eclipse се предлага под отворен публичен лиценз с всички добре документирани API и точки за разширение, така че позволява на разработчиците на инструменти да поддържат произволен брой работни пространства, включително продукти на Microsoft.

    Може ли Eclipse да се сравни с инициативата за отворен код на Sun Microsystems?

    Идеята зад проекта Eclipse е да се създаде "Apache за инструменти за разработчици". Това означава създаване на инфраструктура с отворен код, която предоставя много основни услуги, от които се нуждаят разработчиците на софтуер. Това трябва да бъде „кутия с инструменти за разработване на кутии с инструменти“. Не само колекция от API, рамката на Eclipse ще се състои от реален код, създаден да върши реална работа.

    Както заявява Ерих Гама: „Всичко в Eclipse е плъгин. Java IDE няма специален статус, това е просто още един набор от плъгини, който демонстрира лесната за интегриране разширяемост на платформата. Превръщането на платформата Eclipse с отворен код позволява инструмент създателите да направят същото." и не само за създаване на нови плъгини, но и за подобряване на съществуващите. В резултат на това големите предприятия и представителите на предприятия имат равни условия за интегриране на инструменти."

    Какви са разликите между WebSphere Studio Workbench и платформата Eclipse?

    WebSphere Studio Workbench използва Eclipse като основа за осигуряване на продуктова интеграция, която поддържа софтуерна платформа WebSphere. WebSphere Studio Workbench е пример за използване на технологията Eclipse от платформата Eclipse.

    Eclipse е платформа за интегриране на инструменти с отворен код, достъпна за използване във всяка работна среда.

    Те се различават по четири основни точки:

    1. поддържа

      Поддръжката за платформата Eclipse се предоставя чрез консорциума Eclipse.org, докато поддръжката за WebSphere се предоставя от стандартната структура за поддръжка на IBM (PartnerWorld).

      Лицензиране

      Eclipse Patform се предлага под „Общия публичен лиценз“, докато WebSphere Studio Workbench е достъпен под лиценза на IBM PartnerWorld

      Спин-офи / Модификации на изходния код

      Платформата Eclipse позволява на разработчиците на инструменти да изследват нови граници, да се насочат към нови платформи и операционни системи чрез разширяване и модифициране на кода, извлечен от проекта Eclipse. WebSphere Studio Workbench трябва да бъде интегриран и разпространен, както е доставен от IBM.

      Брандиране

      Технологията Eclipse не е заявена от централизирана марка. как компонентмарка, тя може да бъде възприета от общността, когато се пуснат съвместими продукти. WebSphere Studio Workbench съдържа собствена марка, партньорски програми и предложения за поддръжка.

  • Кога трябва да изберете Eclipse и кога WebSphere Studio Workbench?

    За да помогнат в избора коя технология да използват, производителите на инструменти трябва да отговорят на няколко прости въпроса:

    Определете поддържаната работна среда на инструмента:

    • Ако само WebSphere, изберете WebSphere Studio Workbench.
    • Други среди или разширения за бъдещи технологии? Платформата Eclipse трябва да бъде избрана.
    • И двете среди. Изборът трябва да бъде направен след оценка на степента на синергия между IBM и партньорските програми на IBM.
  • Ще поддържате ли цялото предложение, както кода на Eclipse, така и вашия собствен?

    • Ако не, тогава WebSphere Studio Workbench е по-подходящ за вас.
  • Предоставяте ли инструменти за платформи, които не се поддържат от IBM?

    • Ако да, тогава трябва да се избере платформата Eclipse.
    • Ако не, тогава изборът трябва да бъде направен въз основа на двата предишни критерия.
  • Желаете ли да имате на разположение официална подкрепа и участие в партньорски програми IBM.

    • Ако да, тогава изберете WebSphere Studio Workbench.
    • Ако не, тогава трябва да се избере платформата Eclipse.

- безплатна рамказа разработване на модулни междуплатформени приложения.

Проектът първоначално е разработен през IBMкато корпоративен стандарт IDE за разработка на различни езициза IBM платформи. Тогава проектът беше преименуван на и предоставен за по-нататъшно развитие на общността.

На първо място, пълна Java IDE, насочен към групово развитие, оборудван с инструменти за работа със системи за контрол на версиите (поддръжката на CVS е включена в дистрибуцията на Eclipse, активно се разработват няколко варианта на SVN модули, има поддръжка за VSS и други). Заради безплатното Eclipse е корпоративният стандарт за разработка на приложения в много организации.

Втора среща- служи като платформа за разработване на нови разширения (което набра популярност - всеки разработчик може да разшири Eclipse със своите модули). Тези станаха C/C++ инструменти за разработка(CDT), разработен от инженерите на QNX заедно с IBM, COBOL, FORTRAN, PHP инструменти от различни разработчици. Много разширения допълват Eclipse с мениджъри за работа с бази данни, сървъри на приложения и др.

От версия 3.0 Eclipse вече не е монолитна IDE, която поддържа разширения, а колекция от разширения. Базиран е на рамката OSGi и SWT / JFace, на базата на които е разработен следващият слой - платформа за разработване на пълноценни RCP клиентски приложения (Rich Client Platform - (английски богати клиентски приложения). Платформата RCP обслужва като основа за RCP приложения като Azareus и File Arranger. Следващият слой е платформата Eclipse, която е набор от RCP разширения - редактори, панели, перспективи, CVS модул и модул Java Development Tools (JDT).

Написано в Java, следователно това е продукт, независим от платформата, с изключение на SWT библиотеката, която е разработена за всички общи платформи. Библиотеката SWT се използва вместо "бавния" Swing и е напълно зависима от основната платформа (операционна система), което гарантира бърз и естествен външен видпотребителски интерфейс.

Основата на Eclipse е богатата клиентска платформа (RCP). Състои се от следните компоненти:


  • OSGi (стандартна среда за доставка на комплекти);
  • SWT (преносим инструментариум за джаджи);
  • JFace (файлови буфери, манипулиране на текст, );
  • Работна среда на Eclipse (панели, редактори, проекции, помощници).
  • GUI е написан с помощта на инструментариума SWT. Последният, за разлика от Swing (който емулира само определени графични елементи на използваната платформа), всъщност използва графичните компоненти на тази система. Потребителският интерфейс на Eclipse също зависи от GUI мидълуер, наречен JFace, който улеснява изграждането на потребителски интерфейс, базиран на SWT.

    Гъвкавостта се осигурява чрез плъгини, което прави възможно разработването не само на Java, но и на други езици като C / C ++, Perl, Ruby, Python, PHP, ErLang и други.

    Локализация

    От версия 3.1.1, е пуснат езиков пакет за русификация. Преведено на руски като GUIкакто и документация.

    За околната среда има цяла линиябезплатни и търговски модули. Първоначално средата е разработена за езика Java, но сега има множество разширения за поддръжка на други езици, като напр

    • C/C++ - инструментариум за разработка на C/C++ на CDT Eclipse
    • Perl - EPIC модул, Eclipse Perl интеграция
    • PHP - PDT Инструменти за разработка на PHP
    • JavaScript - JSEclipse Javascript плъгин за средата на Eclipse
    • Python - Pydev, среда за разработка на Python
    • Ruby - RDT, инструменти за разработка на Ruby

    Има и модули за създаване на графични интерфейси.

    За разработване и получаване на отчети и разработване на аналитични BI приложения има en:BIRT_Projec T.

    Функцията за инсталиране и актуализиране на модули чрез .

    Аптана(aptana.com) - разпространение на Eclipse и плъгин, който поддържа разработка с използвайки JavaScript(всички основни JS Ajax библиотеки са включени в дистрибуцията), HTML, CSS, Ruby on rails, Adobe AIR.

    Оставете вашия коментар!

    19.04.2005 Наталия Дубова

    Open Source общността ръководи няколко ключови проекта, сред които, заедно с Linux OS, е създаването на платформата за разработка Eclipse. Стартирала преди няколко години от IBM, днес тази отворена платформа за интегриране на инструменти за разработка на приложения е свободно достъпна в Интернет. отворени кодовеи разработен от потребителската общност.

    Без да навлизаме в дискусия по въпроса какво е програмирането - изкуство или занаят, признаваме: и в двата случая програмистът не може без инструменти за създаване на програми. Заедно с еволюцията на процеса на програмиране (от „магьосничество” през машинни команди до използването на езици от високо ниво), възможностите за автоматизиране на тежката работа на програмистите също бяха подобрени. Първите среди за разработка бяха ограничени до последователно стартиране на компилатори, линкери, зареждащи устройства и програми за отстраняване на грешки, използващи интерфейса командна линия. През 80-те години, наред с персонални компютриНа пазара се появи нов клас софтуерни продукти - интегрирани среди за разработка (IDE) за алгоритмични (Pascal и др.), а след това обектно-ориентирани (Smalltalk, C ++) езици за програмиране. Тази област достигна своя истински разцвет благодарение на активното адаптиране на разработчиците на езика Java; най-известните интегрирани среди за създаване на програми на този език са Borland JBuilder, Symantec Visual Cafe, Microsoft J++, IBM VisualAge и Oracle JDeveloper.

    Основната цел на IDE е да увеличи производителността на разработчиците. Първите среди за разработка, съчетаващи функционалността на програмни текстови редактори, компилатори и дебъгери, основно освобождават потребителите от рутинни операции. С течение на времето наборът от функции на IDE стана по-богат. Той включваше компилатори стъпка по стъпка, браузъри за по-логично представяне на програмите, инструменти за автоматично генериране на код и визуални редактори за създаване на графични потребителски интерфейси. Следвайки тенденциите на времето, средите за разработка се трансформираха от инструменти за повишаване на производителността на програмиста в средство за подпомагане на всички етапи на екипна работа по софтуерен проект. Най-новата тенденция е трансформирането на IDE в ALM (application lifecycle management), интегрирана система за управление на жизнения цикъл на приложението – от дефиниране на изисквания и моделиране до софтуерна конфигурация и управление на версиите, внедряване и поддръжка на готово решение.

    Всяка нова стъпка в еволюцията на IDE има сложни среди за разработка. Въпреки това, потребителите на такива продукти все още бяха принудени да прибягват до инструменти, които не са интегрирани в IDE, дори само защото създаването на приложение не се ограничава до писане и отстраняване на грешки в програми на един език за програмиране. Необходимостта да се използват например HTML страници, схеми на релационни бази данни или части от код на други езици (като Cobol или PL / 1) в приложната система принуждава разработчиците да използват подходящите инструменти, които първоначално не са включени в IDE.

    Ето защо много доставчици на търговски среди за разработка се стремят да ги направят възможно най-отворени и да предоставят специални механизми за интегриране на външни инструменти. Но нито една среда не е в състояние да задоволи всички възможни потребителски изисквания. За да направите това, той трябва да бъде напълно неутрален към езика за програмиране и да поддържа максималния набор от функции. Eclipse не е такава среда, но е база, платформа, с която можете да изграждате многофункционални и многоезични среди за разработка.

    Платформа

    Както обясняват инициаторите на проекта Eclipse, идеята му е била да създаде "Apache за инструменти за разработка" - отворена платформа, която предоставя максимално основни функции за среди за разработка и осигурява механизми за интегриране на различни инструменти. Първата версия на тази платформа е разработена от IBM и пусната в отворен код в края на 2001 г. Скоро започнаха да се появяват комерсиални реализации, базирани на Eclipse, въведени от WebSphere Studio Application Developer 4.0. Сега Eclipse разполага с цяла екосистема за разработка с отворен код, която обединява доставчици и потребители на инструменти, изследователски организации и отделни разработчици.

    В официалните документи на Eclipse Foundation ( www.eclipse.org) Платформата Eclipse се дефинира като независима от доставчика отворена платформа за разработка, която предоставя рамка и примерни функции, както и разширяеми инструменти. Инструментариумът в платформата Eclipse е типичен в смисъл, че проверява приложимостта на основните функции на платформата, илюстрира типични ситуации на тяхното използване и поддържа разработването и поддръжката на самата платформа Eclipse. Инструментариумът е разширим, тъй като неговата функционалност е достъпна чрез документирани програмни интерфейси. Основни принципи, които са ръководили създателите на платформата Eclipse и в съответствие с които тя продължава да се развива, са следните:

    • поддръжка за конструиране на инструменти за разработка на приложения;
    • поддръжка за неограничен брой доставчици на инструменти, включително независими разработчици на софтуер;
    • поддръжка на инструменти за работа с произволни типове съдържание, включително HTML, Java, C, JavaServer Pages, EJB, XML, GIF и др.;
    • осигуряване на "безпроблемна" интеграция на инструменти за работа с различни видове съдържание различни производители;
    • поддръжка на среди за разработка на приложения с конвенционални и графични потребителски интерфейси;
    • осигуряване на възможност за стартиране на среда за разработка, базирана на различни операционни системи (днес Eclipse-базирани инструменти са внедрени за Linux, HP-UX, IBM AIX, Sun Solaris, QNX, Mac OS X, Windows);
    • като се вземе предвид в интерес на развитието на платформата популярността на езика Java при създаването на инструменти за разработка.

    Платформата Eclipse е среда за разработка с много общо предназначение, написана на Java, чиято архитектура осигурява интеграция на различни инструменти и езици за програмиране за решаване на различни проблеми. Механизмите на такава интеграция правят възможно използването на платформата Eclipse за изграждане на усъвършенствани среди за разработка, освободени от рутината на писане на основни инструменти в полза на създаването на сложни, специализирани функции. Това не само решава проблема с поддръжката на многофункционални и многоезични среди за разработка, но също така поставя основата за опростяване на прехода от един тип среда към друг в процеса на тяхната еволюция. Разработена от общност от разработчици, платформата Eclipse ще акумулира най-новите постижения, като ги прави достъпни за разработчиците на специфични продукти и елиминира необходимостта от фундаментален редизайн на техните системи.

    Среда за разработка на Eclipse

    В основата на архитектурата на платформата Eclipse е принципът на използване на плъгини (plug-in). Платформата прилага механизми за откриване, интегриране и изпълнение на такива модули (вижте фигурата). Разработчик, който иска да се възползва от силата на платформата Eclipse, пише своя инструментариум на Java като отделен плъгин. Този модул ще работи с файлове в работното пространство, което се реализира с помощта на компонента workspace. И неговият потребителски интерфейс се основава на инструментите на компонента workbench, който определя общата структура на интерфейса и възможността за неговото разширяване.

    Обикновено един плъгин изпълнява най-простата функционалност на базирана на Eclipse платформа IDE, докато по-сложните инструменти са изградени от множество модули. В същото време почти цялата вградена функционалност на Eclipse Platform също се реализира с помощта на такива модули - с изключение на малко ядро ​​на Platform Runtime. Всеки плъгин има свой собствен манифестен файл (манифест), който описва връзката този модулс други. Когато се стартира среда за разработка, базирана на платформа Eclipse, компонентът Platform Runtime определя набора от налични добавки, чете техните манифестни файлове и изгражда регистър на добавките. След като системата бъде стартирана, повече не могат да се добавят допълнителни модули. Проектът Eclipse внедри специална среда за създаване на плъгини – Plug-In Development Environment (PDE).

    С помощта на специални модули се реализират компонентите на работното пространство (workspace) и потребителския интерфейс (workbench) на платформата Eclipse. Работното пространство съдържа файлове, които са създадени от потребители на инструментите, внедрени от добавките. Компонентът Workbench осигурява обща рамка и инструменти за разширяване на потребителския интерфейс на базираната на Eclipse Platform среда за разработка и включва два компонента за прилагане на средствата за предоставяне на информация на потребителя.

    • Standard Widget Toolkit (SWT) е набор от интерфейсни елементи и графична библиотека, които имат механизми за интегриране с прозоречната система на конкретна операционна платформа, но изпълняват независими от ОС API. Това ви позволява да изграждате потребителски интерфейси на средата за разработка съгласно същите принципи, които съответстват на средата на прозореца, позната на потребителя, но са предназначени за максималния възможен диапазон от операционни системи;
    • JFace е набор от инструменти за изпълнение на редица често срещани задачи, свързани с интерфейси за програмиране с помощта на SWT инструменти.

    Въз основа на API, предоставени от компонентите SWT и JFace, е изграден персонализиран потребителски интерфейс, който дефинира структурата на взаимодействието на потребителя с инструментариума за разработка. Интерфейсът на Eclipse Platform е организиран с помощта на редактори (editor), изгледи (view) и перспективи (perspective).

    Целта на редакторите е да отварят, редактират и записват обекти на работното пространство. Платформата има вграден редактор за текстови ресурси, а други функции трябва да бъдат внедрени като добавки. Изгледите предоставят информация за обекта, с който потребителят работи в момента. И накрая, механизмът за перспектива ви позволява да избирате и организирате правилните редактории изгледи, които да се показват на екрана.

    Организация

    Поддържането на проекти с отворен код предоставя редица предимства. И така, една от задачите на такава платформа е да предостави на разработчиците инструменти от обща база, инвариантна за различни среди за разработка. Защо всеки производител трябва да пише отново това, което може да се напише веднъж? Но за да изгради своите разработки на такава платформа, производителят трябва да се довери напълно на този, който я е създал. И това е възможно само ако успее да тества всичко, което е в него, тоест да получи платформа в отворени кодове.

    Разработването на продукт в съответствие с принципите на Open Source подобрява качеството на кода, тъй като той е съвместно „полиран“ от много заинтересовани разработчици. Отстраняването на грешки става по-лесно и по-добро - благодарение на достъпа до изходния код на програмата и отново включването на разпределен екип в работата. Сътрудничеството ви позволява да споделяте рисковете от създаването на сложни технологии. И колективният орган за разработка на платформата гарантира нейната поддръжка, независимо от възходите и паденията, които могат да възникнат с доставчиците на специфични среди за разработка. И накрая, използването на платформа за разработка с отворен код с гъвкав механизъм за добавяне за внедряване на допълнителна функционалност отваря неограничени възможности за нейното подобряване.

    Архитектура на платформа Eclipse

    Въпреки това, няма да е възможно да се реализират предимствата на модела на разработка с отворен код просто чрез пускане на техническа платформа „в свободно движение“. Трябва да организирате процеса. С пускането на първата версия на Eclipse през 2001 г., тази грижа беше поета от консорциум, организиран от IBM заедно с редица водещи играчи на пазара, а през февруари 2004 г. Бордът на директорите на Eclipse реши да трансформира Eclipse Foundation в независима корпорация с нестопанска цел.

    Eclipse Foundation, консорциум от повече от 60 компании, координира работата за подобряване на платформата Eclipse и други проекти с отворен код.

    Проектът Eclipse е напълно отворен, в него може да участва всеки заинтересован разработчик, който не е задължително да е служител на никоя компания. По принцип всеки може не само да се интересува от детайлите на разработката и да допринесе за идентифициране на грешки, но и да участва в писането на код и цялостния дизайн на следващата версия на платформата. Въпреки това, Eclipse следва принципа за приоритизиране на професионализма. Разработчик с доказан професионален опит може да очаква допълнителна отговорност и възможност да прилага активно уменията си в проекти на Eclipse. Някои разработчици се определят като "отговорни" (committer), тъй като те са отговорни за изходните кодове и само те имат правото да създават нови версии в хранилището на код с отворен код. Обикновено тези разработчици са служители на компании, които плащат за тяхната работа в рамките на проектите на Eclipse.

    Процесът на разработка е итеративен, насочен към максимизиране на участието на членовете на общността на Eclipse в работата по проекта. Пускането на следващото издание се предшества от няколко етапа с фиксирана продължителност (от порядъка на няколко седмици), всеки от които е пълен цикъл, включващ планиране, разработка, тестване и междинно пускане на версията. Завършването на следващия цикъл е придружено от отворена публикация на описание на новите функции на системата, което насърчава членовете на общността да обсъждат, използват и дават препоръки за подобрение. В резултат на това на следващите етапи на развитие става възможно да се вземе предвид реакцията на общността към междинното издание. Това е отворен процес на непрекъснато подобряване на платформата Eclipse и развитието на други инициативи, базирани на нея.

    Целта на технологичния проект Eclipse е да координира усилията на разработчици, изследователи, членове на научни и образователни организацииза определяне на перспективите за платформата Eclipse и други разработки с отворен код. Сред най-забележителните изследователски подпроекти в тази област са разработването на аспектно-ориентиран софтуер (AspectJ и AJDT), създаването на алтернатива на ядрото на Eclipse Runtime (Equinox), създаването на платформа за съвместна разработка (Koi), управление на конфигурацията на софтуера (Stellation), набор от инструменти за XML схеми (XML Schema Definition) и за разработка, базирана на модел (Generative Model Transformer).

    Общност

    Използването на всички материали, получени от изпълнението на проекти на Eclipse, се управлява от лицензионните правила на Common Public License (CPL), които са одобрени от Open Source Initiative. Съгласно CPL всеки е свободен да използва и разпространява Eclipse за търговски и нетърговски цели. Свободно достъпни на уебсайта eclipse.org са:

    • текущи версии на платформата Eclipse за директна употреба (в двоична форма);
    • хранилище на изходния код, където всеки може да види съдържанието и хронологията на ревизиите на всеки изходен файл, както и да получите скриптове за прекомпилиране и изграждане на платформата Eclipse от изходни кодове;
    • отворени дискусионни форуми за обсъждане на платформата Eclipse;
    • база данни за грешки за проследяване на дефекти и проблеми текущи версииплатформи. С тази база данни потребителите могат да идентифицират известни дефекти в техните базирани на Eclipse разработки и да направят новите проблеми, които открият, публични;
    • планове за развитие и контакти на разработчици, участващи в проекти на Eclipse.

    Днес на eclipse.orgсвободно достъпни - повече от сто добавки в изходните кодове за платформата Eclipse. Проектите с отворен код на Eclipse са общо над 2 милиона реда код.

    Ключ към развитието на пазара софтуерни инструментиразвитие има участие в проекта Eclipse на търговски дружества. С платформата Eclipse те получават основните услуги на неутрална по отношение на езика и платформата среда за разработка, така че да могат да съсредоточат усилията и инвестициите си върху разработването на сложна функционалност, която ще поддържа техните решения конкурентоспособни. Има примери за внедрявания, базирани на Eclipse, както на пълнофункционални среди за разработка, които насърчават най-напредналите решения в тази област, така и на специализирани инструменти, насочени към специфичен набор от задачи.

    И така, на платформата Eclipse работят всички продукти от семейството на IBM Rational. Borland възнамерява да прехвърли всички свои инструменти за поддръжка на Eclipse кръговат на животаприложения. Има версия на Eclipse на вградените инструменти за разработка на QNX; подобен проект се изпълнява от Wind River. На свой ред Hewlett-Packard предлага базирана на Eclipse среда за разработка на компоненти за своята система за управление на използването на Интернет, целева аудиториякоито са телеком оператори. Nokia обяви поддръжка за Eclipse като платформа за разработка мобилни приложения. IBM внедри специален Autonomic Computing Toolkit, базиран на Eclipse, предназначен да поддържа автономни компютърни технологии в разработени приложения. От всички водещи световни доставчици на софтуер само Sun Microsystems и Microsoft не си сътрудничат с Eclipse Foundation.

    Доставчиците на търговска среда, базирана на Eclipse, позволяват на разработчици на трети страни да продават добавки за тяхната IDE и се случва една компания да внедри един и същ патентован плъгин за различни среди на платформата Eclipse. Това е не само метод за разработване на нови пазари, но и друг начин за повишаване на значимостта на проекта. Потребителите ценят свободата на избор: ако не са доволни от съществуващата функционалност на среда, базирана на платформа с отворен код, те могат да я разширят чрез самостоятелно разработване или чрез закупуване на търговски решения в същия формат.

    Тези групи използват разработките на Eclipse по различни начини, но всички те допринасят за неговото развитие. Тенденцията е да се използва платформата Eclipse за изграждане на не-IDE приложения. Това е възможно, защото в технологично решение Eclipse Platform няма много специфични за IDE елементи. В третата версия на Eclipse има еволюция от платформа за среди за разработка до платформа за внедряване на пълнофункционални клиентски работни станции (Rich Client Platform). Неслучайно IBM внедрява своята обещаваща среда за сътрудничество Workplace, базирана на Eclipse.

    Литература

    1. Марк Р. Ериксън, Ангъс Макинтайър. , 2001, ноември.
    2. J. dea Rivieres, J. Wiegand. затъмнение. Платформа за интегриране на инструменти за разработка. IBM Systems Journal, 2004, бр. 2.

    Организационна структура на Eclipse

    Разработката на Eclipse и участието в проекти с отворен код на различни организации и отделни разработчици се координира от независимия консорциум с нестопанска цел Eclipse Foundation

    Бордът на директорите на фондация Eclipse се формира от четири основни категории участници:

    • стратегически разработчици (Strategic Developers) - Actuate, Borland, IBM, Computer Associates, Intel, QNX, Wind River, Sybase, Scapa Technologies, BEA Systems;
    • стратегически потребители (Strategic Consumers) - HP, Montavista Software, SAP, Serena Software;
    • включени доставчици (Add-in Providers);
    • води проекти с отворен код.

    Всички стратегически разработчици и стратегически потребители са в борда на директорите, а другите две групи делегират свои представители в него. Стратегическите членове на консорциума също имат определени права да участват в комитети за управление на проекти и съвети, които координират процесите на развитие.

    Консорциумът поддържа няколко основни проекта с отворен код, които включват определен брой подпроекти. Основният проект се управлява от Комитета за управление на проекта (PMC). За управление на развитието като цяло се създават три основни съвета - по определяне на изискванията (Requirements Council), по архитектура (Architecture Council) и по планиране (Planning Council).

    Съветът за определяне на изискванията анализира и структурира изискванията за проекта. Те съчетават изисквания, насочени към постигане на общите цели на Фондация Eclipse и специфичните цели на проекта, решаване на проблемите на ключови членове на консорциума и развитие на екосистемата Eclipse. Въз основа на анализа се формулира списък от теми и приоритети, които ще определят посоката на развитие. Архитектурният съвет е отговорен за проектирането на архитектурата на платформата Eclipse, ясното й описание, съобщаването й на екипите за разработка и защитата й от непреднамерени промени. Съветът за планиране създава координиран план за пускане на платформата.

    Проектите се изпълняват от екипи за разработка, ръководени от ръководители на проекти и включващи разработчици и отговорни разработчици. Първите се занимават с писане на код, идентифициране на грешки, тестване и документиране на програми, а също така изпълняват други задачи в рамките на проекта. Отговорните разработчици имат право да попълват хранилището на изходния код и трябва да влияят върху развитието на проекта. От компаниите, които имат статут на стратегически разработчици към Eclipse Foundation, се изисква да ръководят поне един проект. Те също така се насърчават да ръководят комисии.



    Eclipse е базирана на Java платформа за създаване на софтуер, която предоставя възможност за разработване на програми с плъгини. Съдържа набор от вградени компоненти, сред които е добре познатият продукт Eclipse - средата за разработка на плъгини PDE. PDE ви позволява да разширите самата платформа, съставена от вградени компоненти. Създателите на набор от инструменти могат да предложат свои собствени разширения и да дадат на потребителите съгласувана среда за разработка (IDE).

    В допълнение към езика Java, на който е написан Eclipse, средата за разработка се използва и за други езици за програмиране. Създадени са много добавки, които поддържат C++, Fortran, Perl, Prolog, Python, Ruby и др. Платформата може да бъде основа за друг софтуер, който не е свързан с писане на програми, като telnet и DBMS. Друг пример за код, базиран на Eclipse, е средата за разработка на PDT с основни функцииза редактиране и отстраняване на грешки в PHP приложения.

    Всички права са извратени

    Софтуерът с отворен код е лицензиран, за да гарантира правата на потребителите. Например, изходната програма трябва да бъде предоставена с правото да я променяте и разпространявате отново. Това ниво на защита на правата се постига с помощта на копилефт. Авторското право защитава авторското право, като забранява разпространението на програми, в случай че потребителят няма това право. Copyleft също така изисква лицензът да обхваща софтуера за повторно разпространение без модификация. В този случай същността на авторското право става обратното. Copyleft използва авторските права не за да запази правата на разработчиците, а за да ги прехвърли на потребителите.

    Затова има опасения и съмнения, че отворени програмище доведе до загуба на интелектуална собственост, тъй като copyleft ще се разпространи в други части на софтуера. С други думи, лицензът ще изисква всички приложения с отворен код да се разпространяват с еднакви права. Това е вярно при Общия публичен лиценз (GNU) - Linux се разпространява под него. Но има разрешителни, които дават различно отношение към обществените и търговски интереси.

    OSI е организация с нестопанска цел, която ясно дефинира какво е отворен код и одобрява онези лицензи, които отговарят на нейните критерии. Платформата Eclipse се разпространява под EPL, лиценз с отворен код, сертифициран от OSI, който улеснява търговската й употреба, като същевременно поддържа лоялността на авторите с отворен код.

    Създателите на плъгини или потребителите на средата за разработка на софтуер трябва да публикуват всеки код на Eclipse, който използват или модифицират, но могат да лицензират свои собствени добавки по какъвто и да е начин. Прехвърляне на права върху тях за откриване софтуерне се изисква, както и публикуването на изходния код.

    И докато мнозина няма да използват Eclipse за създаване на свои собствени разработки, наличието на изходния код на платформата голямо значениене само поради липсата на такси, но и защото насърчава иновациите и насърчава програмистите да дадат своя собствен продукт като принос към общата кауза. главната причинаТова – колкото повече труд е вложен в проекта, толкова по-значим е той за всички. Ако е полезно, тогава броят на разработчиците се увеличава още повече и около проекта се създава общност, подобна на тези, възникнали около Linux и Apache.

    Организация с идеална цел

    Eclipse е среда за разработка, библиотеки и инструменти за създаване, внедряване и управление на софтуер, както и общност от неговите създатели. Платформата е създадена от IBM през 2001 г. с подкрепата на доставчици на софтуер.

    Фондация Eclipse е създадена през 2004 г. Това е асоциация с нестопанска цел, която подкрепя проекти на платформа и подобрява общността на разработчиците и системата от допълнителни програми и услуги. Днес екосистемата на Eclipse включва организации и лица от софтуерната индустрия.

    Фондацията наблюдава и управлява проектите на платформата. Той служи на общността и разработчиците, наречени комитери, не са част от персонала. Те са служители на други организации или независими програмисти, които доброволно отделят личното си време за работа по проект.

    Eclipse: характеристики на платформата

    • Създаване на различни инструменти за разработка на софтуер.
    • Неограничен брой доставчици на инструменти, включително независими.
    • Поддръжка на инструменти за работа с различно съдържание, като HTML, C, EJB, Java, JSP, GIF и XML.
    • Осигуряване на пълна интеграция във и между различно съдържание.
    • Eclipse е среда за разработка на софтуер със или без нея.
    • Работа в различни операционна система, включително Linux, Windows, Solaris AIX, Mac OS X.
    • Използване на Java, популярен език за инструменти за писане.

    Начално ръководство за Eclipse

    След първото стартиране на програмата се появява приветствено съобщение. Потребителят може да отиде на прегледа и да научи нови функции, примери или обучение.

    Работното пространство се състои от панели за преглед. Наборът от представяния се нарича перспектива. Перспективата Ресурси, например, включва изгледи за редактиране, управление и преглед на проекти.

    Начинаещите трябва да започнат с Основи на пространството с инструменти, където можете да научите много за различните части на Eclipse и как те взаимодействат.

    Работа с JDT

    За въведение в JDT можете да отворите проекта Eclipse Java. За да направите това, изберете елемента от менюто "Файл" - "Нов" - "Проект Java", въведете името на проекта и щракнете върху "Край".

    За да промените текущата перспектива, трябва да изберете елемента от менюто "Прозорец" - "Отворена перспектива" - ​​Java или да отворите нов прозорец през "Прозорец" - "Нов прозорец" и да изберете различна перспектива.

    Перспективата съдържа изгледи, които са предназначени за разработка на Java. В левия ъгъл, в горната част, има йерархия с Eclipse Java пакети, класове, JAR и различни файлове, наречени „Пакетен браузър“. В същото време главното меню беше попълнено с 2 елемента: Source и Refactor.

    Създаване на програма в JDT

    За да създадете Java приложение, щракнете с десния бутон върху създадения преди това проект и изберете "Нов" - "Клас". В изскачащия диалогов прозорец въведете името на класа. Под въпроса: "Какви заготовки за метод искате да създадете?" - посочете public static void main(String args) и щракнете върху Finish.

    Резултатът ще бъде програма, съдържаща въведения клас и празен main(). Методът трябва да бъде завършен програмен код(декларацията j е умишлено пропусната):

    публичен клас здравей(

    public static void main(String args)(

    за (j=0; j<=5;j++)

    System.out.println("Здравей");

    По време на въвеждане можете да забележите функциите на редактора:

    • автоматично довършване;
    • проверка на синтаксиса;
    • автоматично затваряне на отваряща скоба или кавички.

    Довършването на код се извиква чрез натискане на Ctrl + интервал. Това ще покаже контекстно-чувствителен списък с опции, които могат да бъдат избрани от клавиатурата или мишката, независимо дали е списък с методи за този обект или част от ключова дума.

    Синтаксисът се проверява спрямо инкрементална компилация. Това се случва, докато кодът се пише в същото време, когато се компилира. Синтактичните грешки са подчертани в червено, а вляво от тях се появява червена точка с бял наклонен кръст. Останалите грешки са посочени в полетата под формата на електрическа крушка. Можете да ги поправите сами с Quick Fix.

    В горния пример електрическата крушка е срещу оператора for, защото няма i декларация. След двукратно щракване върху електрическата крушка ще се появи списък с възможни корекции. В този случай за j се предлага да се създаде:

    • класно поле;
    • параметър на метода;
    • локална променлива.

    Ако изберете една от опциите с мишката, можете да видите получения текст.

    Двойното щракване върху необходимата опция генерира програмен код.

    Стартиране на приложение

    Ако няма грешки при компилиране, приложението може да се стартира чрез елемента от менюто "Старт". Няма стъпка на компилация, тъй като се извършва по време на запазване на кода. В диалоговия прозорец „Изпълнение на конфигурация“, който се появява, необходимите стойности на които вече са зададени, трябва да щракнете върху бутона Изпълнение вдясно, по-долу. В долната част ще се появи конзола с раздели и резултат от приложението.

    Програмата може да се изпълнява в дебъгер. Първо, точката на прекъсване се задава в System.out.println() чрез две кликвания на мишката върху сивото поле вляво от прозореца за редактиране, до извикването на метода. В резултат на това ще се появи синя точка. Изберете менюто "Старт" - "Отстраняване на грешки". Прозорецът за конфигурация на стартиране ще се появи отново. След като щракнете върху бутона Старт, ще се появи перспективата за отстраняване на грешки с нови изгледи.

    В изгледа „Отстраняване на грешки“ вляво, в горната част, има стек за повиквания и за контрол на напредъка на програмата. Панелът съдържа бутони за спиране, продължаване и излизане от приложението, изпълнение и пропускане на следващия оператор и връщане от метод. Горе вдясно има серия от панели с раздели: променливи, точки на прекъсване, изрази и екран. Когато изберете раздела променлива, можете да видите стойността на променливата j.

    Подробна информация за всеки от изгледите може да бъде предоставена чрез контекстна следа. Просто трябва да щракнете върху заглавката на панела и да натиснете F1.

    Допълнителни добавки

    Средите за разработка на софтуер, които са проектирани да ги модифицират, компилират и отстраняват грешки в Eclipse, са допълнени с компоненти, които могат да моделират, автоматизират изграждането, тестват модули, производителност, конфигурация и управление на версиите.

    Системата за управление на CVS източника ви позволява да навигирате в тях. В този случай направените промени не се смесват. Той е важна и неразделна част от Eclipse.

    Средата за разработка се намира на eclipse.org. Приставките се намират в централната директория на приставките.

    Архитектура

    Основата на платформата са функционално богати RCP клиенти. Опростено, те могат да бъдат представени като набор от добавки, използвани при разработването на програми. Има и допълнителни препоръчителни и незадължителни компоненти.

    Основните компоненти са както следва:

    • Средата за изпълнение дефинира модела на компонента въз основа на OSGi спецификацията, разширенията и точките за разширение. Той също така предоставя допълнителни услуги като syslog и concurrency.
    • Пакетът SWT съдържа функции на Eclipse и модули за потребителски интерфейс. Има добавка с класове, които улесняват създаването на графични приложения.
    • Пространството с инструменти включва перспективи, изгледи и прозорци за редактиране.
    • Компонентът Помощ осигурява потребителска поддръжка под формата на помощна система или интерактивен списък със задачи.
    • Plugin "Update" ви позволява да получите най-новата версия на софтуера.
    • Екипният компонент предлага инфраструктурата за свързване на вашите собствени

    Платформата, създадена от IBM, се превърна в пълнофункционална система с отворен код. В него участват повече от сто компании. Въпреки че е имало идеи за създаване на такива системи и преди, обмисленият, надежден и елегантен дизайн на Eclipse го е поставил начело.