Eclipse (программное обеспечение)

Материал из wikixw
Перейти к навигации Перейти к поиску

Эта статья о Eclipse IDE. Другое программное обеспечение, называемое "Eclipse", см. Eclipse (disambiguation) § Вычислительная техника.

Eclipse - это интегрированная среда разработки (IDE), используемая в компьютерном программировании. Она содержит базовое рабочее пространство и расширяемую подключаемую систему для настройки среды. Это вторая по популярности IDE для разработки Java, и до 2016 года она была самой популярной.[6] Eclipse написан в основном на Java, и его основное использование - для разработки Java-приложений, но он также может быть использован для разработки приложений на других языках программирования с помощью плагина-ins, включая Ada, ABAP, C, C ++, C #, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby (включая фреймворк Ruby on Rails), Rust, Scala и Scheme. Он также может использоваться для разработки документов с LaTeX (через плагин TeXlipse) и пакетов для программного обеспечения Mathematica. Среды разработки включают в себя Eclipse Java development tools (JDT) для Java и Scala, Eclipse CDT для C / C ++ и Eclipse PDT для PHP, среди других.

Исходная кодовая база возникла из IBM VisualAge.[9] Eclipse software development kit (SDK), который включает в себя инструменты разработки Java, предназначен для разработчиков Java. Пользователи могут расширить его возможности, установив плагины, написанные для платформы Eclipse, такие как наборы инструментов разработки для других языков программирования, а также могут писать и вносить свои собственные модули плагинов. С момента появления реализации OSGi (Equinox) в версии 3 Eclipse плагины могут быть динамически подключены и остановлены и называются пакетами (OSGI).

Eclipse software development kit (SDK) - это бесплатное программное обеспечение с открытым исходным кодом, выпущенное на условиях публичной лицензии Eclipse, хотя оно несовместимо с общей публичной лицензией GNU. Это был один из первых IDE, запущенных под GNU Classpath, и он работает без проблем под IcedTea.

История[править]

Eclipse был вдохновлен семейством интегрированных сред разработки (IDE) VisualAge на основе Smalltalk. Несмотря на то, что продукты VisualAge были довольно успешными, основным недостатком продуктов VisualAge было то, что разработанный код не был в компонентной модели разработки программного обеспечения. Вместо этого весь код проекта хранился в сжатом виде (что-то вроде zip-файла, но в проприетарном формате .dat). Отдельные классы не могут быть легко доступны, конечно, не за пределами инструмента. Команда в основном в лаборатории IBM Cary, NC разработала новый продукт как замену Java. В ноябре 2001 года был сформирован консорциум с советом управляющих для дальнейшего развития Eclipse как программного обеспечения с открытым исходным кодом. По оценкам, к тому времени IBM уже инвестировала почти 40 миллионов долларов. Первоначальными членами были Borland, IBM, Merant, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft и WebGain. К концу 2003 года число стюардов возросло до более чем 80. В январе 2004 года был создан Фонд Eclipse Foundation.

Eclipse 3.0 (выпущен 21 июня 2004 года) выбрал спецификации платформы обслуживания OSGi в качестве архитектуры времени выполнения.

26 апреля 2012 года Ассоциация вычислительной техники признала Eclipse премией ACM Software Systems Award 2011.

Лицензирование[править]

Публичная лицензия Eclipse (EPL) является основной лицензией, под которой выпускаются проекты Eclipse. Некоторые проекты требуют двойного лицензирования, для которого доступна лицензия на распространение Eclipse (EDL), хотя использование этой лицензии должно быть подано и рассматривается в каждом конкретном случае.

Первоначально Eclipse был выпущен под общей публичной лицензией, но позже был перелицензирован под публичной лицензией Eclipse. Фонд свободного программного обеспечения заявил, что обе лицензии являются свободными лицензиями на программное обеспечение, но несовместимы с GNU General Public License (GPL).

Имя[править]

По словам Ли Накмана, главного технологического директора подразделения IBM Rational (возникшего в 2003 году) в то время, название "Eclipse" (датируемое, по крайней мере, 2001 годом) не было игрой слов на Sun Microsystems, поскольку основным конкурентом продукта на момент наименования была Microsoft Visual Studio, которая Eclipse должен был затмить.

Разные версии Eclipse получили разные научные названия. За версиями, названными в честь Каллисто, Европы и Ганимеда, спутников Юпитера, последовала версия, названная в честь Галилея, первооткрывателя этих лун. За ними последовали два имени на тему солнца: Гелиос из греческой мифологии и Индиго, один из семи цветов радуги (который производится солнцем). Версия после этого, Юнона, имеет тройное значение: римская мифологическая фигура, астероид и космический корабль к Юпитеру. Кеплер, Луна и Марс продолжили тему астрономии, а затем Неон и Кислород составили тему химических элементов. Photon представлял собой возвращение к названиям на тему солнца.

По состоянию на 2018 год алфавитная схема была отменена, чтобы лучше соответствовать новой стратегии одновременного выпуска. Релизы названы в формате ГГГГ-ММ, чтобы отразить ежеквартальные выпуски, начиная с версии 4.9 с именем 2018-09.

РЕЛИЗЫ[править]

С 2006 года Фонд координирует ежегодный одновременный выпуск. Каждый выпуск включает платформу Eclipse и несколько других проектов Eclipse.

С 2008 по 2018 год каждый одновременный выпуск происходил в 4-ю среду июня. В 2018 году проект перешел на ежеквартальные (13-недельные) выпуски ГГГГ-ММ без промежуточных сервисных релизов.

Архитектура[править]

Eclipse использует плагины для обеспечения всей функциональности внутри и поверх системы времени выполнения. Его система времени выполнения основана на Equinox, реализации спецификации OSGi core framework.

Помимо расширения платформы Eclipse с использованием других языков программирования, таких как C и Python, фреймворк плагинов позволяет платформе Eclipse работать с языками набора текста, такими как LaTeX[63], и сетевыми приложениями, такими как telnet и системы управления базами данных. Архитектура плагина поддерживает запись любого желаемого расширения в среду, например, для управления конфигурацией. Поддержка Java и CVS предоставляется в Eclipse SDK, с поддержкой других систем контроля версий, предоставляемых сторонними плагинами.

За исключением небольшого ядра во время выполнения, все в Eclipse является плагином. Таким образом, каждый разработанный плагин интегрируется с Eclipse так же, как и другие плагины; в этом отношении все функции "созданы равными". Eclipse предоставляет плагины для широкого спектра функций, некоторые из которых принадлежат третьим лицам, использующим как бесплатные, так и коммерческие модели. Примеры плагинов включают в себя для Unified Modeling Language (UML), для последовательности и других диаграмм UML, плагин для DB Explorer и многое другое.

Eclipse SDK включает в себя Eclipse Java development tools (JDT), предлагающий IDE со встроенным инкрементным компилятором Java и полной моделью исходных файлов Java. Это позволяет использовать передовые методы рефакторинга и анализа кода. IDE также использует рабочую область, в данном случае набор метаданных над плоским файловым пространством, позволяющий изменять внешние файлы до тех пор, пока соответствующий ресурс рабочей области не будет обновлен после этого.

Eclipse реализует графические элементы управления инструментария Java под названием Standard Widget Toolkit (SWT), тогда как большинство Java-приложений используют Java standard Abstract Window Toolkit (AWT) или Swing. Пользовательский интерфейс Eclipse также использует промежуточный графический уровень пользовательского интерфейса, называемый JFace, который упрощает создание приложений на основе SWT. Eclipse был запущен на Wayland во время проекта Google Summer of Code (GSoC) в 2014 году .

По состоянию на год языковые пакеты, разрабатываемые проектом Babel, обеспечивают переводы на более чем 40 естественных языков.

Богатая клиентская платформа[править]

Eclipse предоставляет платформу rich client platform (RCP) для разработки приложений общего назначения.

Следующие компоненты составляют платформу rich client:

   Equinox OSGi – стандартный пакетный фреймворк
   Основная платформа – загрузка Eclipse, запуск плагинов
   Standard Widget Toolkit (SWT) – портативный набор инструментов виджетов
   Классы JFace – viewer для программирования контроллера представления модели в SWT, буферы файлов, обработка текста, текстовые редакторы
   Eclipse Workbench – представления, редакторы, перспективы, мастера

Примеры богатых клиентских приложений на основе Eclipse:

Серверная платформа[править]

Eclipse поддерживает разработку для Tomcat, GlassFish и многих других серверов и часто способен установить необходимый сервер (для разработки) непосредственно из IDE. Он поддерживает удаленную отладку, позволяя пользователю просматривать переменные и пошаговый код приложения, запущенного на подключенном сервере.

Платформа Web Tools[править]

Проект Eclipse Web Tools Platform (WTP) является расширением платформы Eclipse с инструментами для разработки веб- и Java EE-приложений. Он включает в себя исходные тексты и графические редакторы для различных языков, мастера и встроенные приложения для упрощения разработки, а также инструменты и API для поддержки развертывания, запуска и тестирования приложений.

Платформа моделирования[править]

Проект моделирования содержит все официальные проекты Фонда Eclipse, ориентированные на технологии разработки на основе моделей. Все они совместимы с платформой моделирования Eclipse, созданной IBM. Эти проекты разделены на несколько категорий: преобразование моделей, инструменты разработки моделей, разработка конкретного синтаксиса, разработка абстрактного синтаксиса, технологии и исследования, а также Амальгама.

Model Transformation projects использует модели на основе Eclipse Modeling Framework (EMF) в качестве входных данных и создает либо модель, либо текст в качестве выходных данных. Проекты преобразования модели в модель включают ATLAS Transformation Language (ATL), язык преобразования с открытым исходным кодом и инструментарий, используемый для преобразования данной модели или создания новой модели из данной модели EMF. Проекты преобразования модели в текст содержат Acceleo, реализацию MOFM2T, стандартного языка преобразования модели в текст из группы управления объектами (OMG). Генератор кода Acceleo может генерировать любой текстовый язык (Java, PHP, Python и т. Д.) Из моделей на основе EMF, определенных с помощью любой метамодели (Unified Modeling Language (UML), Systems Modeling Language (SysML) и т. Д.). Это с открытым исходным кодом.

Инструменты разработки моделей - это реализации различных стандартов моделирования, используемых в отрасли, и их инструментарий. Среди этих проектов можно найти реализации нескольких стандартов:

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

Проект разработки абстрактного синтаксиса содержит платформу моделирования Eclipse, ядро большинства проектов моделирования Eclipse Foundation и платформу, доступную для таких EMF, как Connected Data Objects (CDO), EMF query или EMF validation.

Технологические и исследовательские проекты являются прототипами проекта моделирования; этот проект используется для размещения всех проектов моделирования Фонда Eclipse во время их инкубационной фазы.

Amalgam обеспечивает упаковку и интеграцию всех доступных инструментов моделирования для пакета Eclipse, предназначенного для инструментов моделирования.

Управление жизненным циклом приложений[править]

Управление жизненным циклом приложений (ALM) и управление задачами в Eclipse требуют дополнительного компонента Mylyn (/ˈ m aɪ l ɪ n /), реализации интерфейса, ориентированного на задачи, с открытым исходным кодом. Он предоставляет API для инструментов, встраивающих интерфейс, ориентированный на задачи. Для разработчиков программного обеспечения это помогает разработчику эффективно работать со многими различными задачами (такими как ошибки, отчеты о проблемах или новые функции). Задачи интегрированы в Mylyn. Для всех интегрированных задач Mylyn отслеживает активность пользователя и пытается определить информацию, относящуюся к поставленной задаче. Он использует этот контекст задачи, чтобы сфокусировать пользовательский интерфейс Eclipse на соответствующей информации. Mylyn может интегрироваться с такими репозиториями, как Bugzilla, Trac, Redmine, Mantis, JIRA, Unfuddle, и GitHub. Он фокусируется на повышении производительности за счет сокращения поиска, прокрутки и навигации. Делая контекст задачи явным, Mylyn также предназначен для облегчения многозадачности, планирования, повторного использования прошлых усилий и обмена опытом.

Название проекта происходит от миелина, электрически изолирующего слоя, который окружает аксоны нейронов. Первоначальное название этого проекта, "Майлар", было товарным знаком кинокомпании boPET, поэтому Фонд Eclipse изменил название проекта.

Расширения[править]

Eclipse поддерживает богатый выбор расширений, включая поддержку Python через PyDev, разработку Android через Google ADT (заменен Android Studio с 2015 года), JavaFX через e (fx) clipse, JavaScript, jQuery и многие другие на Eclipse Marketplace. Valable - это плагин Vala для Eclipse.

Альтернативные дистрибутивы[править]

В проекте Eclipse существует несколько альтернативных дистрибутивов.

Инструменты разработки PHP[править]

Дополнительная информация: Инструменты разработки PHP

Проект PHP Hypertext Preprocessor (PHP) Development Tools предоставляет платформу для платформы Eclipse. Проект включает в себя все компоненты разработки, включая завершение кода, разработку PHP и обеспечение расширяемости. Он использует существующую платформу Eclipse Web Tools Platform (WTP) и Dynamic Languages Toolkit (DLTK).

Инструменты разработки Android[править]

Android Development Tools (ADT) был заменен в 2015 году собственным плагином Eclipse Foundation под названием Andmore: Development Tools for Android[76] после того, как Google прекратила разработку своего плагина для Eclipse IDE, предназначенного для обеспечения интегрированной среды для создания приложений Android. ADT / Andmore расширяет возможности Eclipse, позволяя разработчикам создавать новые проекты Android, создавать пользовательский интерфейс приложения, добавлять пакеты на основе API Android Framework, отлаживать свои приложения с помощью инструментов Android SDK и экспортировать подписанные (или неподписанные) файлы .apk для распространения своих приложений. Он находится в свободном доступе для скачивания. ADT Googles был официальной IDE для Android до 2015 года, но был заменен Eclipse Andmore и официальной студией Android.

См. также[править]

Читать[править]

/wiki.freephile.org/ Фрифилия

Пруф[править]

/eclipseide.org/