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

редактировать
Среда разработки программного обеспечения Java

Eclipse
Eclipse-Luna-Logo.svg
Экран приветствия Eclipse 4.12 Экран приветствия Eclipse 4.12
Автор (ы) IBM
Разработчик (и) Eclipse Foundation
Первоначальный выпуск1.0 / 7 ноября 2001 г.; 18 лет назад (2001-11-07)
Стабильный выпуск 4.17 (выпуск 2020-09) / 16 сентября 2020 г.; 38 дней назад (16.09.2020)
Предварительный выпуск 4.18 (выпуск 2020-12)
Репозиторий Отредактируйте это в Wikidata
Написано наJava и C
Операционная система Linux, macOS, Windows
Платформа Java SE, Standard Widget Toolkit, x86-64
Доступно на44 языках
Список языков Албанский, арабский, баскский, болгарский, каталонский, китайский (упрощенный, традиционный), Чешский, датский, голландский, английский (Австралия, Канада), эстонский, финский, французский, немецкий, греческий, иврит, хинди, венгерский, индонезийский, итальянский, японский, клингонский, корейский, курдский, литовский, малаялам, монгольский, мьянма, Непальский, норвежский, персидский, польский, португальский (Португалия, Бразилия), румынский, русский, сербский, словацкий, словенский, испанский, шведский, тайский, турецкий, украинский, вьетнамский
Тип Инструмент программирования, интегрированная среда разработки (IDE)
Лицензия Общественная лицензия Eclipse
Веб-сайтwww.eclipse.org Отредактируйте это в Викиданных

Eclipse - это интегрированная среда разработки (IDE), используемая в компьютерном программировании. Он содержит базовую рабочую область и расширяемую систему плагинов для настройки среды. Eclipse написан в основном на Java и в основном используется для разработки приложений Java, но его также можно использовать для разработки приложений на других языках программирования через плагины, включая 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 и Схема. Его также можно использовать для разработки документов с помощью LaTeX (через плагин TeXlipse) и пакетов для программного обеспечения Mathematica. Среды разработки включают, среди прочего, инструменты разработки Eclipse Java (JDT) для Java и Scala, Eclipse CDT для C / C ++ и Eclipse PDT для PHP.

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

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

Содержание

  • 1 История
    • 1.1 Лицензирование
    • 1.2 Имя
    • 1.3 Релизы
  • 2 Архитектура
  • 3 Платформа полнофункционального клиента
  • 4 Серверная платформа
  • 5 Платформа веб-инструментов
  • 6 Платформа моделирования
  • 7 Управление жизненным циклом приложений
  • 8 Расширения
  • 9 Альтернатива дистрибутивы
    • 9.1 Инструменты разработки PHP
    • 9.2 Инструменты разработки Android
  • 10 См. также
  • 11 Ссылки
  • 12 Источники
  • 13 Внешние ссылки

История

Eclipse был вдохновлен с помощью семейства Smalltalk VisualAge продуктов интегрированной среды разработки (IDE). Несмотря на то, что продукты 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 Спецификации сервисной платформы в качестве архитектуры среды выполнения.

Association for Computing Machinery 26 апреля 2012 года вручила Eclipse награду ACM Software Systems Award.

Лицензирование

Общественная лицензия Eclipse (EPL) - это основная лицензия, по которой выпускаются проекты Eclipse. Для некоторых проектов требуется двойное лицензирование, для которого доступна лицензия Eclipse Distribution License (EDL), хотя на использование этой лицензии необходимо подавать заявку и это рассматривается в индивидуальном порядке.

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

Имя

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

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

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

Выпуски

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

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

Название версииДатаВерсия платформыПроектыОсновные изменения
Н / Д 21 июня 2004 г.Старая версия, больше не поддерживается: 3.0
Н / Д28 Июнь 2005 г.Старая версия, больше не поддерживается: 3.1Добавлена ​​поддержка Java 5 : обобщенные шаблоны, аннотации, упаковка-распаковка, перечисления, улучшенный цикл for, varargs, статический импорт
Callisto 30 июня 2006 г.Старая версия, больше не поддерживается: 3.2Проекты Callisto
Europa 29 июня 2007 г.Старая версия, нет больше не поддерживается: 3,3Проекты в Европе
Ганимед 25 июня 2008 г.Старая версия, больше не поддерживается: 3,4Проекты Ганимед
Галилео 24 июня 2009 г.Старая версия, больше не поддерживается: 3.5Проекты Galileo
Helios 23 июня 2010 г.Старая версия, больше не поддерживается: 3.6Проекты Helios
Indigo 22 июня 2011 г.Старая версия, больше не поддерживается: 3.7Проекты IndigoДобавлен Java 7 Поддержка (3.7.1 sr1): улучшенный вывод типа для создания универсального экземпляра (Diamond), множественный захват, оператор try-with-resources, упрощенный вызов метода Varargs, строки в переключателе, двоичные литералы и символы подчеркивания в числовых литералах, Полиморфные методы
Juno 27 июня 2012 г.Старая версия, больше не поддерживается: 3.8 и 4.2проекты Juno
Kepler 26 июня 2013 г.Старая версия, больше не поддерживается: 4.3Проекты Kepler
Luna 25 июня 2014 г.Старая версия, больше не поддерживается: 4.4Проекты LunaИнтегрированная поддержка Java 8 ; в предыдущей версии это было возможно с помощью подключаемого модуля исправлений Java 8.
Марс 24 июня 2015 годаСтарая версия, больше не поддерживается: 4.5Марс проекты
Неон 22 июня 2016 годаСтарая версия, больше не поддерживается: 4.6Неоновые проекты
Oxygen 28 июня 2017 годаСтарая версия, больше не поддерживается: 4.7Oxygen проектыOxygen.1a представил поддержку Java 9 и Junit 5, а Oxygen.3a представил поддержку Java 10.

Прекращена поддержка следующих платформ на базе Unix: AIX, Solaris, HP-UX и s390.

Photon 27 июня 2018 г.Старая версия, больше не поддерживается: 4.8Проекты PhotonПрекращена поддержка 32-битных Windows и Linux.
2018-0919 сентября 2018Старая версия, больше не поддерживается: 4.92018-09 проекты
2018-1219 декабря 2018 г.Старая версия, больше не поддерживается: 4.102018-12 проектыДобавлена ​​поддержка Java 11.
2019-0320 марта 2019Старая версия, больше не поддерживается: 4.112019-03 проекты
2019-0619 июня 2019Старая версия, больше не поддерживается: 4.122019-06 проекты
2019-0918 сентября 2019Старая версия, больше не поддерживается: 4.13Проекты 2019-09
2019-1218 декабря 2019Старая версия, больше не поддерживается: 4.142019-12 проекты
2020 -0318 марта 2020 г.Старая версия, больше не поддерживается: 4.152020-03 проекты
2020-0617 июня 2020Старая версия, больше не поддерживается: 4.162020-06 проекты
2020-0916 сентября 2020 годаТекущая стабильная версия: 4.172020-09 проекты
2020-1216 декабря 2020 годаБудущая версия: 4.182020- 12 проектов
Условные обозначения: Старая версия Старая версия, все еще поддерживается Последняя версия Последняя предварительная версия Будущий выпуск
  1. ^Имеется выпуск 3.8 Затмения Юноны; он не рекламируется на главной странице загрузок, но пакетный дистрибутив доступен для загрузки. Eclipse 3.8 обеспечивает исправления ошибок для Indigo и добавляет поддержку Java 7, а его обслуживание было двухпотоковым с 4.2. Функции и плагины, эквивалентные пакетному дистрибутиву, могут быть добавлены из среды IDE.

Архитектура

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

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

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

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

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

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

Платформа полнофункционального клиента

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

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

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

Серверная платформа

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

Платформа веб-инструментов

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

Платформа моделирования

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

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

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

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

Аннотация В проекте разработки синтаксиса размещается Eclipse Modeling Framework, ядро ​​большей части проекта моделирования Eclipse Foundation, а также инфраструктура, доступная для EMF, например Connected Data Objects (CDO), запрос EMF или проверка EMF.

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

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

Управление жизненным циклом приложения

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

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

Extensions

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

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

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

Средства разработки PHP

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

Инструменты разработки Android

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

См. Также

  • icon Портал компьютерного программирования
  • Портал бесплатного программного обеспечения с открытым исходным кодом

Ссылки

Источники

Внешние ссылки

Последняя правка сделана 2021-05-18 05:53:02
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте