Если вы интересуетесь новостями мира ПО с открытым кодом, то наверняка уже что-то слышали о Eclipse. Это Open Source IDE (integrated development environment) среда разработки, созданная при самом непосредственном участии IBM.

 

Датой рождения проекта принято считать ноябрь 2001, когда IBM пожертвовала кодом стоимостью 40 миллионов, который первоначально был основой для среды разработки этой компании - Websphere Studio Workbench. Какие цели преследовала при этом IBM, трудно сказать, но для продолжения проекта был создан консорциум (Eclipse Consortium) для согласования работ по продолжению разработки.

 

Изюминка этой IDE заключается в том, что она является расширяемой - и это позволяет писать плагины как для распространения, так и для личного использования. Нечто подобное реализовано в коммерческой IDE от Microsoft - Visual Studio. Но в Eclipse эта технология реализована более полно и более органично.

 

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

 

Проект состоит из нескольких подпроектов:

  • Eclipse IDE workbench - собственно среда разработки или фундамент;
  • Java Development Tools (JDT) и Plug-In Development Environment - два проекта, необходимых для расширения среды разработки и создания собственных плагинов;
  • Eclipse Tools Project - проект, отвечающий за создание IDE для основных языков разработки (сейчас существуют Cobol IDE и C/C++ IDE, а также EMF modeling tool - инструмент для моделирования);
  • Eclipse Technology Project - занимается общими исследованиями в области технологий, лежащих в основе данной IDE.

Сам IDE, как вы уже поняли, реализован на Java2-технологии - с несколько необычным подходом в области GUI. Графический интерфейс в этой IDE реализован с помощью библиотеки SWT. Эта библиотека является, по сути, очень тонкой и легковесной Java-оберткой для оконного API операционной системы или графического сервера. Ближайшие коммерческие конкуренты этой IDE - JBuilder и JIdea - используют для этого стандартную Java2 GUI библиотеку - Swing. Очевидно, что благодаря этому интерфейсы IDE Eclipse ничем не отличаются от стандартных оконных интерфейсов всех поддерживаемых операционных систем. Хотя, естественно, можно также сказать, что в жертву экономии ресурсов была принесена некоторая доля гибкости, поскольку Swing - очень мощная графическая библиотека, действительно отделенная от нэйтив API мощной прослойкой. На взгляд автора, при продолжающемся падении цен на аппаратные ресурсы PC лучшим выбором был бы все же Swing.

 

Eclipse в комбинации с JDT предлагает столь же широкий спектр возможностей, который мы были бы вправе ожидать от коммерческих IDE: подсветка синтаксиса в текстовом редакторе, инкрементальная компиляция, debugger с поддержкой потоков, класс-навигатор, file/project-менеджер, а также интерфейсы к стандартным средствам контроля кода и коллективной разработки, таким как CVS и ClearCase. Eclipse, кроме того, включает в себя и несколько более уникальных возможностей, таких как refactoring кода, автозавершение кода, список задач, поддержка для unit тестирования с помощью JUnit и интеграция с Jakarta Ant - инструментом для сборки проектов (чуть ниже остановимся на некоторых из этих возможностей подробнее).

 

Несмотря на большое количество стандартных возможностей, Eclipse несколько отличается от традиционных IDE. Возможно, наиболее интересная особенность Eclipse состоит в том, что она полностью независима от языка программирования и платформы. В дополнение к основным языкам программирования, поддерживаемым в рамках Eclipse Consortium (Java, C/C++, Cobol), существуют также проекты для поддержки таких языков как Python, Eiffel, PHP, Ruby, и C#.

 

Eclipse Consortium представляет скомпилированные исполняемые файлы для следующих платформ: Windows, Linux, Solaris, HP-UX, AIX, QNX и Mac OS X. Добавление поддержки для нового типа редактора или языка программирования - относительно простая для Eclipse задача, поскольку мы получаем доступ к хорошо структурированному API и готовым "строительным",блокам которые предоставляет для нас Eclipse.

 

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

 

Инсталляция

 

Возможно, вы уже заинтересовались тем, где можно взять копию Eclipse для вашей платформы и что следует сделать для ее инсталляции. Первое, что нужно сделать, это убедиться в том, что у вас инсталлирована подходящая Java runtime. Сейчас Eclipse может работать с версией Java VM 1.3 или 1.4, текущая версия спроектирована для запуска с VM 1.3. Чтобы проверить, есть ли у вас установленная Java VM, а также чтобы уточнить ее версию, наберите в консоли команду java -version.

На моей, например, машине это выглядело так:

 

C:\>java -version
java version "1.4.1_02"
Java (TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02-b06)
Java HotSpot (TM) Client VM (build 1.4.1_02-b06, mixed mode)

 

Если ничего подобного у вас не случилось или если версия java-машины старая, необходимо проинсталлировать более подходящий runtime.

 

Сразу же после установки Java VM вы готовы к инсталляции Eclipse. Зайдите на загрузочную страницу и скачайте последний релиз для вашей платформы (или поищите его на диске "К+П"). Все файлы имеют .zip-формат. Распакуйте архив в подходящую директорию. Все, инсталляция завершена - никаких запусков setup!

 

Если вы правильно инсталлировали JVM и распаковали Eclipse-архив, то для первого запуска Eclipse все должно быть уже готово. Все бинарные дистрибутивы содержат файл для запуска приложения в основной директории. Имя этого файла меняется в зависимости от платформы - например, eclipse.exe для Windows или eclipse для Solaris и так далее. Во время первого запуска Eclipse выполнит несколько оставшихся инсталляционных задач (например, создаст workspace-директорию для сохранения project-файлов).

 

Создаем приложение с помощью Eclipse

 

Здесь, в общем-то, все достаточно стандартно, если, конечно, у вас уже есть опыт работы с другими IDE. Выберите File > New > Project... чтобы создать ваш первый Java-проект в этой среде. В появившемся диалоге выберите Java из списка возможных типов проектов и Project из списка, находящегося справа. После этого нажмите кнопку Next. На втором появившемся диалоге введите имя проекта -HelloWorld, и снова нажмите Next.

 

На последнем шаге wizard позволяет нам задать каталог для нашего проекта; определить любые проекты, от которых будет зависеть наш проект и которые могут понадобиться для построения текущего проекта; а также подключить те библиотеки, которые понадобятся при сборке проекта. Выберите Use source folder, размещенный в группе радио кнопок project, затем щелкните Create New Folder... кнопку. Введите src для того, чтобы определить имя новой папки. Щелкните Yes, когда Eclipse спросит вас, не хотите ли вы изменить вашу папку для "выходного" файла на папку HelloWorld/bin.

 

Вы, наверное, заметили, что, после того как Eclipse создал проект, расположение оконных элементов в среде изменилось - это новое расположение называется Java Perspective. У Eclipse есть несколько предопределенных перспектив (Resource, Java, Debug, и т.д.), которые могут быть настроены,- или же вы можете создать собственные, полностью новые перспективы. Вы можете управлять перспективами, используя items из Window-меню или инструментальной панели (которая так и называется 'perspective toolbar' - обычно она появляется в левом углу окна Eclipse).

 

Следующий шаг на пути к созданию нашего Java-проекта - это создание директорий, в которых будет располагаться исходный код нашей программы. Переключитесь в перспективу ресурсов, используя Window > Open Perspective > Resource. В дереве управления проектом разыщите папку src. После чего щелкните на нем и выберите File > New > Folder. В появившемся диалоге убедитесь, что вами был выбран src, и напечатайте имя, которое вы хотите дать вашему пакету, в поле диалога, которое называется Folder Name.

 

Естественно, вы не обязаны создавать каталоги проекта именно таким способом - если вам так больше нравится, сделайте это в вашей любимой файловой оболочке, после чего выберите пункт меню File > Refresh. Среда на секунду задумается - и каталоги будут синхронизированы в соответствии с состоянием вашего проекта. После чего из того же контекстного меню укажите, что это не просто папка, а пакет вашего проекта. Я думаю, вы уже освоились в новой среде и готовы уже сделать это самостоятельно.

 

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

 

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


Для простоты создадим консольное приложение в стиле Hello World - тем более что оно будет соответствовать названию нашего проекта. Тестовая программа будет включать всего один файл - Main.java. Выберите опцию Создать новый класс - сейчас это не должно вызвать у вас каких-либо затруднений. Все, что от вас потребует wizard, так это впечатать название нового файла (без расширения java - будет добавлено автоматически), а также указать расположение нового класса в структуре каталогов. Если вы отметите флажок включить функцию main (), то все, что останется сделать, это впечатать строку вида: System.out.println ("Hello World") внутрь main ()-функции. Не забывайте вызвать File > Refresh - для того чтобы обновить Eclipse-проект, если вы делаете что-то извне.

 

 

Когда все будет готово, соберите проект. Для этого нажмите Run Main на главной панели Eclipse (кнопка с изображением бегущего человечка). Тут опять на помощь нам придет wizard - с просьбой выбрать главный класс приложения. У вас должно получиться то, что вы видите на картинке.

 

Недостатки и достоинства


Вы, наверное, уже обратили внимание на то, что среда крайне интуитивна, а редактор, а также средства управления проектом имеют порой даже больше возможностей, чем коммерческие среды разработки. Ближайшим коммерческим аналогом среды можно считать JIdea. Возможности примерно те же - но отсутствие плагинов для работы с другими языками. Мы рассмотрели работу со средой на примере плагинов для Java (идут по умолчанию, хотя вы могли скачать только оболочку и плагины для Java - я, например, именно так и сделал).

 

Отдельно хотелось бы отметить возможности refactoring - они просто поразительны. Для того чтобы оценить их, достаточно просто взглянуть на меню Refactor (рис. 2).

 

 

Итак, попробуем систематизировать все положительные стороны этой среды разработки.

  1. Среда бесплатная.
  2. Есть возможность использовать для сборки проекта внешние инструменты.
  3. Очень навороченный редактор с возможностями, не уступающими коммерческим средам разработки.
  4. Очень хорошие средства управления проектом с возможностью интеграции со средствами контроля исходного кода.
  5. Предусмотрена возможность подключения плагинов для других языков программирования.
  6. Есть возможность написания собственных плагинов.
  7. Очень мощные средства рефэкторинга.
  8. Простота инсталляции плагинов - достаточно всего лишь скопировать новый плагин в папку /plugins.
  9. Реакции редактора значительно более быстрые, чем в таких средах разработки, как Jbuilder и JIdea.
  10. Высокая степень интуитивности.

Из числа отрицательных сторон можно отметить:

  1. Отсутствие многих визардов для разработки специфических приложений, как то: приложения для WEB, J2ME и EJB-приложений. Здесь Jbuilder вне конкуренции. Такого рода заготовки помогают значительно экономить время при работке проекта.
  2. Отсутствие средств (или необходимость их отдельной инсталляции) для создания архивов, исполняемых файлов и так далее, что тоже в значительной степени экономит время. Впрочем, отчасти это компенсируется тесной интеграцией с Ant.
  3. Большая прожорливость по отношению к ресурсам (хотя, с другой стороны, недостатком это считать нельзя, поскольку это болезнь, общая для всех сред разработки, написанных на Java).
  4. Отсутствие GUI-генераторов для Swing- и AWT-приложений. Они реализованы, например, в таких средах как Jbuilder и SunOne. Такие средства, опять же, значительно экономят время разработчика. Разработка GUI происходит в десятки, а то и в сотни раз быстрее.

Заключение может быть таким: если вы еще не определились со средой разработки, обратите внимание на Eclipse. И даже если вы уже используете какую-либо среду разработки и она вас вполне устраивает, все равно загрузите и "поиграйтесь" с Eclipce. Она того стоит.

 

Кроме того, если вы программируете на языке, отличном от Java, то, возможно Eclipce - как раз то, что вам надо. Сообщество Java-разработчиков несколько избаловано средами программирования, а потому для вас Eclipse может оказаться именно тем что нужно. Естественно, вам придется загрузить плагины для вашего языка программирования. Например, для C++ Eclipse была единственной мультиплатформенной средой разработки - вплоть до появления Xbuilder, который более требователен к ресурсам и к тому же отнюдь не бесплатен.

2004.04.28
19.03.2009
В IV квартале 2008 г. украинский рынок серверов по сравнению с аналогичным периодом прошлого года сократился в денежном выражении на 34% – до $30 млн (в ценах для конечных пользователей), а за весь календарный год – более чем на 5%, до 132 млн долл.


12.03.2009
4 марта в Киеве компания Telco провела конференцию "Инновационные телекоммуникации", посвященную новым эффективным телекоммуникационным технологиям для решения задач современного бизнеса.


05.03.2009
25 февраля в Киеве компания IBM, при информационной поддержке "1С" и Canonical, провела конференцию "Как сохранить деньги в условиях кризиса?"


26.02.2009
18-19 февраля в Киеве прошел юбилейный съезд ИТ-директоров Украины. Участниками данного мероприятия стали ИТ-директора, ИТ-менеджеры, поставщики ИТ-решений из Киева, Николаева, Днепропетровска, Чернигова и других городов Украины...


19.02.2009
10 февраля в Киеве состоялась пресс-конференция, посвященная итогам деятельности компании "DiaWest – Комп’ютерний світ" в 2008 году.


12.02.2009
С 5 февраля 2009 г. в Киеве начали работу учебные курсы по использованию услуг "электронного предприятия/ учреждения" на базе сети информационно-маркетинговых центров (ИМЦ).


04.02.2009
29 января 2009 года в редакции еженедельника "Computer World/Украина" состоялось награждение победителей акции "Оформи подписку – получи приз!".


29.01.2009
22 января в Киеве компания "МУК" и представительство компании Cisco в Украине провели семинар для партнеров "Обзор продуктов и решений Cisco Small Business"

 

 
 
Copyright © 1997-2008 ИД "Комиздат".