- Эклипс
-
Eclipse Eclipse 3.3 в Ubuntu 7.10Тип Разработка программного обеспечения Разработчик Eclipse Foundation Написана на ОС Кроссплатформенное программное обеспечение Версия 3.4.2 — 11 февраля 2009 Тестовая версия 3.5 M6 — 13 марта 2009 Лицензия Eclipse Public License Сайт eclipse.org Eclipse (/iˈklɪps/, от англ. затмение[1]) — свободный фреймворк для разработки модульных кроссплатформенных приложений. Разрабатывается и поддерживается Eclipse Foundation.
Наиболее известные приложения на основе Eclipse Platform — различные «Eclipse IDE» для разработки ПО на множестве языков (например, наиболее популярный «API для доступа к Eclipse Platform).
Содержание
История
Первоначально Eclipse разрабатывалась фирмой IBM VisualAge. По сведениям IBM, проектирование и разработка стоили 40 миллионов долларов. Исходный код был полностью открыт и сделан доступным после того, как Eclipse был передан независимому от IBM сообществу.
В Eclipse 3.0 (2003 год) были выбраны спецификации сервисной платформы
Последняя стабильная версия программы — 3.4 (Ganymede). Она поддерживает новые возможности, появившиеся в
Изначально проект разрабатывался в
Eclipse — в первую очередь полноценная Java IDE, нацеленная на групповую разработку, снабжённая средствами для работы с системами контроля версий (поддержка VSS и других). В силу бесплатности и высокого качества во многих организациях Eclipse — корпоративный стандарт для разработки приложений.
Второе назначение Eclipse — служить платформой для разработки новых расширений (чем и завоевал популярность — любой разработчик может расширить Eclipse своими модулями). Таковыми стали C/C++ Development Tools (CDT), разрабатываемые инженерами
С версии 3.0 Eclipse стал не монолитной поддерживающей расширения IDE, а набором расширений. В основе лежат фреймворк SWT/
Eclipse написана на Java, потому является платформо-независимым продуктом, за исключением библиотеки SWT, которая разрабатывается для всех распространённых платформ (см. ниже). Библиотека SWT используется вместо стандартной для Java библиотеки Swing. Она полностью зависит от нижележащей платформы (операционной системы), что обеспечивает быстроту и натуральный внешний вид пользовательского интерфейса, но иногда вызывает проблемы совместимости и устойчивости приложений на разных платформах.
Архитектура
Основой Eclipse является платформа расширенного клиента (англ. rich client platform). Её составляют следующие компоненты:
- Ядро платформы (загрузка Eclipse, запуск модулей);
-
- SWT (портируемый инструментарий виджетов);
- файловые буферы, работа с текстом, текстовые редакторы);
- Рабочая среда Eclipse (панели, редакторы, проекции, мастеры).
GUI в Eclipse написан с использованием инструментария SWT. Последний, в отличие от
Гибкость Eclipse обеспечивается за счёт подключаемых модулей, благодаря чему возможна разработка не только на Java, но и на других языках, таких как C/C++, Groovy, Python, Erlang и прочие.
Проекты Eclipse
Платформа
- Eclipse Project[2] — собственно проект Eclipse, включает в себя
- Eclipse Platform — каркас
- Plug-in Development Environment[3] — инструмент расширения Eclipse-платформы посредством Eclipse-плагинов
- Java Development Tools[4] — инструмент разработки Java-программ и Eclipse-плагинов в частности
- Rich Client Platform[5] — платформа расширенного клиента, минимальный набор плагинов[6][7] для построения программы с графическим интерфейсом
Примеры проектов
Кроме того в состав Eclipse входят следующие проекты (перечислены лишь некоторые)[8]:
- Aperi (от лат. открывать) — open source система управления системами сетевого хранения данных[9]
- BIRT[10] — Web- и [11] — разработка систем, управляемых данными (data-centric systems), в частности данными в реляционных базах; управление программами с большим числом коннекторов
- GEF[12] —
- Jazz[13][14] — collaboration
- Modeling[15]
- EMF[16], Среда моделирования Eclipse — средство для создания моделей и генерации кода для построения инструментов и других приложений, базирующихся на структурированной модели данных, из спецификации модели, прописанной в [17] — реализация метамодели
- Tools[18]
- AspectJ[19] — аспектно-ориентированное расширение языка [20] — среда разработки на C/C++ (C/C++ IDE)
- TPTP[21] — разработка инструментов тестирования, — отладчики, профайлеры и т. п.
- VE[22] — разработка инструментов GUI
- WTP[23] — инструменты разработки веб-приложений J2EE
- Коммуникационная среда Eclipse[24] нацелена на создание коммуникационных приложений на платформе Eclipse.
- Проект разработки программного обеспечения для устройств[25]
- Платформа параллельных инструментов[26] обеспечивает портируемую, масштабируемую, основанную на стандартах платформу параллельных инструментов, которая позволит облегчить интеграцию инструментов, специфических для параллельных компьютерных архитектур.
- Платформа встроенного расширенного клиента[27] — предназначена для расширения RCP на встраиваемые устройства. В eRCP входит набор компонентов, которые являются подмножеством компонентов RCP. Она позволит перенести модель приложения, используемого на настольных компьютерах, на другие устройства.
- [28] — интегрированная среда разработчика для динамических языков программирования.
- Swordfish[29] — платформа для построения распределенных корпоративных информационных систем.
Последние версии
Eclipse 3.3.2 (Europa Winter)
Количество новых субпроектов (как управляемых Eclipse Foundation, так и сторонних) быстро увеличивается. Приходится координировать усилия огромного количества разработчиков и предлагать общие правила — «Eclipse Development Process».[30]
Последняя версия релиза включает в себя 21 субпроект.[31]
Eclipse 3.4 (Ganymede)
Релиз Ganymede (06.2008) включает в себя 23 субпроекта:[32]
- Eclipse Project 3.4
- Equinox 3.4
- Eclipse Communication Framework Project 2.0.0
- Eclipse Model Framework Technology
- Eclipse Modeling Framework 2.4.0
- Eclipse Packaging Project 1.0.0
- Eclipse Web Tools Platform Project 3.0.0
- Graphical Editor Framework 3.4.0
- Graphical Modeling Framework 2.1
- Model Development Tools. 1.1
- Data Tools Platform (DTP) 1.6
- Device Software Development Platform Project Device Debugging 1.0
- Device Software Development Platform Project Target Management 3.0
- Buckminster Component Assembly 1.1
- BIRT 2.3.0
- C/C++ Development Tool (CDT) 5.0.0
- Dynamic Languages Toolkit 0.95
- Model to Text (M2T) 0.9.0
- Model-to-Model Transformation (M2M)
- Mylyn 3.0 (task-focused UI)
- Rich Ajax Platform (RAP) 1.1
- SOA Tools (STP) 1.0
- Subversive — SVN Team Provider
- Target Management 3.0
- Test and Performance Tools Platform Project 4.5.0
Локализация
Начиная с версии 3.1.1, выпущен языковой пак для русификации Eclipse. Переведены на русский язык как графический интерфейс, так и документация.[33]
Модули
Для среды Eclipse существует целый ряд свободных и коммерческих модулей. Первоначально среда была разработана для языка
Язык Модуль C/С++ CDT[34] [35] [36] [37] [38] [39] Модуля для поддержки Pascal на данный момент нет. Вернее, есть заброшенный плагин PasClipse, который можно возродить при желании. Ещё есть поддержка подсветки синтаксиса паскаля плагином EclipseColorer, но это не может считаться полноценной поддержкой языка.
Существуют также модули для создания графических интерфейсов.
Для разработки и получения отчётов и разработки аналитических BI-приложений в Eclipse имеется BIRT Project (англ.).
В Eclipse встроена функция установки и обновления модулей через Интернет.
Популярные приложения на базе SWT и RCP
- IBM Rational Application Developer (англ.)
- IBM Lotus Notes/Domino — клиентская часть, начиная версии 8.0
- Azureus
- RSSOwl (англ.)
- Jcommander (англ.)
- File Arranger — файловый менеджер
- Subclipse — [41]
- Bioclipse (англ.) — система визуализации химической и биологической информации
- Eclipse Trader — система биржевой торговли[42]
- ZipTie — фреймворк для мониторинга сетевых устройств[43]
- Schoolclipse — управление школой[44]
- Elexis — система ведения медицинской документации
Поддерживаемые архитектуры и системы
Примечания
- ↑ http://www.eweek.com/article2/0,1759,1818211,00.asp
- ↑ Eclipse.org(англ.)
- ↑ PDE
- ↑ JDT
- ↑ RCP
- ↑ org.eclipse.core.runtime
- ↑ org.eclipse.ui
- ↑ http://www.eclipse.org/projects/
- ↑ http://google.de/search?q=Aperi+SNIA&meta=lr%3Dlang_ru
- ↑ Business Intelligence and Reporting Tools(англ.)
- ↑ Data Tools Platform(англ.)
- ↑ Graphical Editor Framework(англ.)
- ↑ Jazz.net(англ.)
- ↑ http://compulenta.ru/304563/
- ↑ http://eclipse.org/modeling/
- ↑ http://www.eclipse.org/modeling/emf/
- ↑ http://www.eclipse.org/modeling/mdt/?project=uml2
- ↑ http://eclipse.org/tools/
- ↑ http://eclipse.org/aspectj/
- ↑ C/C++ Development Tools(англ.)
- ↑ Test & Performance Tools Platform)(англ.)
- ↑ Visual Editor Project(англ.)
- ↑ Web Tools Platform Project(англ.)
- ↑ ECF
- ↑ DSDP
- ↑ PTP
- ↑ eRCP
- ↑ http://www.eclipse.org/dltk/
- ↑ http://www.eclipse.org/swordfish/
- ↑ http://www.eclipse.org/projects/dev_process/development_process.php#Project_Lifecycle
- ↑ http://www.eclipse.org/europa/projects.php
- ↑ http://www.eclipse.org/ganymede/projects.php
- ↑ Visual Editor Translations
- ↑ Eclipse’s C/C++ Development Tooling(англ.)
- ↑ Eclipse Perl Integration(англ.)
- ↑ PHP Development Tools(англ.)
- ↑ Javascript plugin for the Eclipse environment(англ.)
- ↑ Установка PyDev в Eclipse
- ↑ Ruby Development Tools(англ.)
- ↑ Aptana + PyDev = любовь с App Engine
- ↑ http://subclipse.tigris.org/
- ↑ http://eclipsetrader.sourceforge.net/
- ↑ http://ziptie.org/
- ↑ https://schoolclipse.dev.java.net/
См. также
Ссылки
- Официальный сайт проекта Eclipse(англ.)
- Eclipse API(англ.)
- Документация Eclipse(англ.) — Документация для Eclipse SDK
- Модули Eclipse(англ.) — Один из самых популярных каталогов модулей для Eclipse
- EclipseWiki(англ.)
- Модули редактора Wikipedia для Eclipse(англ.) — Редактор с подсветкой синтаксиса и возможностями скачивания/закачивания для текстов wikipedia
- Модули для Eclipse 3.x(англ.)
- Rich Client Platform(англ.) — Платформа расширенного клиента
- Коллекция модулей для Eclipse(англ.)
- Eclipse IDE project resources(англ.) Почему я преподаю Eclipse Начало работы с платформой Eclipse Русскоязычный форум об Eclipse, форум RCP-приложения File Arranger
- Eclipse и сопутствующие технологии
- Ставим плагины для IDE Eclipse
- Бесплатный инструментарий стоимостью в миллиард
- EasyEclipse(англ.) — варианты дистрибутивов Eclipse «под ключ» для разных направлений разработки (Expert Java, Desktop Java, Server Java, Mobile Java и т. д.)
- Teach Eclipse — уроки по Eclipse для начинающих
- Eclipse: знакомство, плагины Студия Артемия Лебедева
IDE Универсальные Visual Studio • NetBeans • Eclipse • XCode • MonoDevelop • Open Watcom C/C++ Borland C++ • C++ Builder • wxDev-C++ • PellesC • Sun Studio • Ultimate++ BlueJ • DrJava • Greenfoot • JCreator • JDeveloper • IntelliJ IDEA • Pascal Delphi • MIDletPascal • PocketStudio • Morfik • Turbo Pascal Сравнение интегрированных сред разработки программного обеспечения
Wikimedia Foundation. 2010.