Введение
Eclipse IDE – это интегрированная среда разработки (IDE), используемая в компьютерном программировании. Она включает в себя базовое рабочее пространство и расширяемую систему плагинов для настройки среды. Eclipse является второй по популярности IDE для разработки на Java и до 2016 года была самой популярной. 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 и Scheme. Она также может применяться для разработки документов в LaTeX (с помощью плагина TeXlipse) и пакетов для программного обеспечения Mathematica. В качестве сред разработки используются Eclipse Java Development Tools (JDT) для Java и Scala, Eclipse CDT для C/C++ и Eclipse PDT для PHP, среди прочих. Исходный код был разработан на основе IBM VisualAge. Комплект разработки программного обеспечения Eclipse (SDK), включающий инструменты разработки на Java, предназначен для Java-разработчиков. Пользователи могут расширять его функциональность, устанавливая плагины, разработанные для платформы Eclipse, такие как наборы инструментов для других языков программирования, а также создавать и вносить собственные плагины. Начиная с Eclipse 3.0 (выпущенной в 2004 году), плагины устанавливаются и управляются как «пакеты» с использованием Equinox – реализации OSGi. Eclipse SDK – это бесплатное программное обеспечение с открытым исходным кодом, распространяемое на условиях лицензии Eclipse Public License, хотя она несовместима с GNU General Public License. Eclipse была одной из первых IDE, работающих под GNU Classpath, и без проблем функционирует под IcedTea.
the Eclipse IDE
Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug in system for customizing the environment. It is the second most popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby (including Ruby on Rails framework), Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX (via a TeXlipse plug in) and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others. The initial codebase originated from IBM VisualAge. The Eclipse software development kit (SDK), which includes the Java development tools, is meant for Java developers. Users can extend its abilities by installing plug ins written for the Eclipse Platform, such as development toolkits for other programming languages, and can write and contribute their own plug ins. Since Eclipse 3.0 (released in 2004), plug ins are installed and managed as "bundles" using Equinox, an implementation of OSGi. The Eclipse SDK is free and open source software, released under the terms of the Eclipse Public License, although it is incompatible with the GNU General Public License. It was one of the first IDEs to run under GNU Classpath and it runs without problems under IcedTea.
История
Eclipse был вдохновлен семейством интегрированных сред разработки (IDE) VisualAge, основанных на Smalltalk. В ноябре 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 Service Platform в качестве архитектуры среды выполнения. Ассоциация вычислительной техники удостоила Eclipse награды ACM Software System Award 26 апреля 2012 года за достижения 2011 года.
Лицензирование
Лицензия Eclipse Public License (EPL) является базовой лицензией, под которой распространяются проекты Eclipse. Для некоторых проектов требуется двойное лицензирование, для чего доступна лицензия Eclipse Distribution License (EDL), однако использование этой лицензии требует подачи заявки и рассматривается в каждом конкретном случае. Изначально Eclipse был выпущен под Common Public License, но впоследствии был перелицензирован под Eclipse Public License. Фонд свободного программного обеспечения заявил, что обе лицензии являются лицензиями свободного программного обеспечения, но несовместимы с GNU General Public License (GPL).
Имя
По словам Ли Накмана, главного технического директора подразделения IBM Rational (основанного в 2003 году), в то время название "Eclipse" (существующее как минимум с 2001 года) не было игрой слов, отсылающей к Sun Microsystems, поскольку основным конкурентом продукта на момент его наименования была Microsoft Visual Studio, которую Eclipse должен был превзойти. Разным версиям Eclipse давались названия, связанные с наукой. За версиями, названными в честь спутников Юпитера – Каллисто, Европы и Ганимеда, последовала версия, названная в честь Галилея, открывшего эти спутники. Затем последовали два названия, связанные с темой солнца: Гелиос из греческой мифологии и Индиго, один из семи цветов радуги (возникающей благодаря солнечному свету). Версия после неё, Юнона, имеет тройное значение: римский мифологический персонаж, астероид и космический аппарат, направленный к Юпитеру. Кеплер, Луна и Марс продолжили астрономическую тематику, а затем Неон и Кислород стали темой химических элементов. "Фотоны" ознаменовали возвращение к названиям, связанным с солнцем. С 2018 года алфавитная схема была отменена для лучшего соответствия новой стратегии синхронизированных релизов. Релизы теперь именуются в формате YYYY MM, отражая квартальные выпуски, начиная с версии 4.9, получившей название 2018 09.
Серверная платформа
Eclipse поддерживает разработку для Tomcat, GlassFish и многих других серверов и часто позволяет устанавливать необходимый сервер (для разработки) прямо из IDE. Она поддерживает удаленную отладку, позволяя пользователю отслеживать значения переменных и пошагово выполнять код приложения, работающего на подключенном сервере.
Платформа веб-инструментов
Проект Eclipse Web Tools Platform (WTP) — это расширение платформы Eclipse, предоставляющее инструменты для разработки веб-приложений и приложений Java EE. Он включает в себя редакторы исходного кода и графические редакторы для различных языков, мастера и встроенные приложения, упрощающие разработку, а также инструменты и API для поддержки развертывания, запуска и тестирования приложений.
Управление жизненным циклом приложений
Управление жизненным циклом приложений (ALM) и управление задачами в Eclipse требуют дополнительный компонент под названием Mylyn ('/m//aɪ//l//ɪ//n/'), – реализацию с открытым исходным кодом интерфейса, ориентированного на задачи. Он предоставляет API для инструментов, интегрирующих этот интерфейс. Для разработчиков программного обеспечения Mylyn помогает эффективно работать с множеством различных задач (например, с ошибками, сообщениями об ошибках или новыми функциями). Задачи интегрируются в Mylyn. Для всех интегрированных задач Mylyn отслеживает действия пользователя и пытается определить информацию, релевантную текущей задаче. Используя этот контекст задачи, Mylyn фокусирует пользовательский интерфейс Eclipse на связанной информации. Mylyn может интегрироваться с репозиториями, такими как Bugzilla, Trac, Redmine, Mantis, JIRA, Unfuddle и GitHub. Он направлен на повышение производительности за счет уменьшения времени, затрачиваемого на поиск, прокрутку и навигацию. Делая контекст задачи явным, Mylyn также призван облегчить многозадачность, планирование, повторное использование предыдущих наработок и обмен опытом. Название проекта происходит от миелина – электрически изолирующего слоя, окружающего аксоны нейронов. Изначальное название проекта, "Mylar", совпадало с товарным знаком компании, производящей пленку boPET, поэтому Фонд Eclipse изменил название проекта.
Особенности
Функции Eclipse IDE включают в себя текстовый редактор с подсветкой синтаксиса, помощь при написании кода, автодополнение кода, рефакторинг кода, анализ кода с предложениями "быстрого исправления" и отладку кода. Наряду с нативной поддержкой OSGi, начиная с Java 9 добавлена поддержка JPMS. Помимо встроенных предупреждений компилятора Java, для повышения качества и согласованности кода доступны дополнительные плагины для линтинга, такие как SpotBugs и Sonar. Поддержка инструментов сборки, таких как Ant, Maven, Make и CMake, включает возможность непосредственной замены родного формата файлов проектов Eclipse на Maven pom.xml.
Альтернативные распределения
В проекте Eclipse существует несколько альтернативных сборок.
Инструменты разработки 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 под названием Andmore: Development Tools for Android, после того как Google прекратил разработку своего плагина для Eclipse IDE, предназначенного для предоставления интегрированной среды разработки приложений для Android. ADT/Andmore расширяет возможности Eclipse, позволяя разработчикам создавать новые проекты Android, разрабатывать пользовательский интерфейс приложений, добавлять пакеты на основе API Android Framework, отлаживать приложения с помощью инструментов Android SDK и экспортировать подписанные (или неподписанные) APK-файлы для распространения приложений. Плагин доступен для бесплатного скачивания. Google ADT являлся официальной IDE для Android до 2015 года, но был заменен Andmore от Eclipse и официальной Android Studio. По состоянию на 2024 год проект, по всей видимости, находится в состоянии застоя, и с 2017 года активность в нем отсутствует.