Современные среды разработки программного обеспечения: обзор и анализ

Бесплатный доступ

Статья посвящена проблеме выбора сред разработки программного обеспечения. Проведен анализ современных сред JDK, BlackBox, Eclipse, Microsoft Visual Studio.

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

Короткий адрес: https://sciup.org/140225624

IDR: 140225624

Текст научной статьи Современные среды разработки программного обеспечения: обзор и анализ

Процесс разработки программного обеспечения делает более продуктивным использование программистами качественной и эффективной среды разработки. Для создания и развертывания систем, в которых программное обеспечение является важнейшим и обязательным элементом, среда разработки должна содержать все необходимое. Простая среда разработки включает в себя редактор текста, компилятор и/или интерпретатор, средства автоматизации сборки и отладчик. Если эти компоненты собраны в единый программный комплекс, то говорят об интегрированной среде разработки (Integrated development environment-IDE). Существуют среды разработки, предназначенные для нескольких языков, и среды разработки, предназначенные для одного определённого языка программирования.

Рассмотрим некоторые современные среды разработки: JDK, BlackBox, Eclipse, Microsoft Visual Studio.

Среда разработки JDK (Java Development Kit) – это широко распространенная простая многоплатформенная среда. В ней используется любой текстовый редактор. Данная среда имеет два основных исполняемых файла: компилятор javac.exe и исполнитель оттранслированных классов java.exe. Исходные файлы имеют расширение java, оттранслированные – class. Иерархии пакетов, каждый из которых включает один или несколько классов, определяется на уровне языка. При трансляции иерархия пакетов отражается в файловую структуру. Наборы классов одного или нескольких пакетов могут объединяться и храниться в одном архиве файлов с расширением jar. С другой стороны, эти файлы также можно считать компонентами среды (подсистемами). При компиляции и запуске программ пути к этим подсистемам указываются в качестве параметров. На базе JDK функционирую более развитые платформы, такие как IDEA, NetBeans, Eclipse.

BlackBox (BlackBox Component Builder) — это открытая система программирования для языка программирования

Компонентный Паскаль, который является вариантом языка Оберон. Система BlackBox простая, описание языка занимает порядка тридцати страниц. Система очень быстрая, компилирует даже на процессоре i386. BlackBox занимает в максимальной конфигурации 20 MB на диске. Не смотря на то, что система компактная, она очень мощная. Это достигается, в том числе, за счет лучшей в промышленности поддержки технологий компонентно-ориентированного программирования. Данная система является бесплатной для некоммерческого использования.

Система BlackBox имеет простую модель операционной среды. К примеру, в языке отсутствует вложенность модулей и классов. За счет этого упрощается архитектурная модель. Если сравнивать с языком Java, то, в отличие от него, в рассматриваемой системе один модуль транслируется в один файл. Поскольку BlackBox написан на Компонентном Паскале, любой скомпилированный модуль становится частью системы. Это означает, что и файл с машинным кодом, и соответствующий символьный файл становятся доступными для импорта из других модулей. Поэтому приложение может иметь такой же интерфейс, как и сама среда.

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

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

объекты и строит по ним подходящие элементы управления. В системе имеются и другие технологические приемы, позволяющие сделать разработку приложений более удобной. Поэтому BlackBox используется не только для промышленного программирования, но и для обучения программированию.

Eclipse - бесплатная программная платформа с открытым исходным кодом, контролируется организацией Eclipse Foundation. Eclipse написана на языке программирования Java. Изначально Eclipse представляла собой полноценную интегрированную среду для языка Java. Подключение внешних модулей позволило нарастить функциональность, увеличить количество поддерживаемых языков. Используя Eclipse можно программировать на таких языках как Java, C и C++, PHP, Perl, Python, Cobol и других.

Для создания элементов пользовательского интерфейса в Eclipse используется платформозависимая библиотека SWT - Standard Widget Toolkit. Системой предусмотрена возможность создания настраиваемых стилей, которые позволяют произвольно менять как внешний вид приложения, так и поведение составляющих его компонентов. Интерфейс обладает разнообразными возможностями, некоторые из которых являются оригинальными и не встречаются в других операционных средах. Так, режимы работы могут либо объединяться в одну панель, либо размещаться каждый в отдельной панели. Есть встроенный механизм чередования панелей, когда они не занимают место на экране, а вызываются кнопками по мере необходимости.

Особенностью платформы Eclipse является кроссплат-форменность. Eclipse работает под операционными системами Windows, Linux, Solaris и Mac OS X. Платформа Eclipse является фреймворком для разработки других инструментов и предлагает обширный набор API для создания модулей. Используя подход RCP (Rich Client Platform) Eclipse является инструментом для создания практически любого клиентского программного обеспечения. Гибкость и расширяемость достигается благодаря модульности платформы.

Коды расширений и модулей выполняются в исполняющей среде - Eclipse Runtime. Она обеспечивает всю базовую функциональность платформы - управление расширениями и обновлениями, взаимодействие с операционной системой, обеспечение работы системы помощи. За управление основными элементами программы, их расположением и настройками, управление проектами, отладку и сборку проектов, поиск по файлам и командную разработку отвечает IDE.

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

На сегодняшний день многие разработчики программного обеспечения, работающие на платформе Windows, отдают предпочтение операционной среде разработки MS Visual Studio. Данная среда позволяет эффективно создавать сложные приложения в течение короткого периода времени. Добавление сторонних плагинов позволяет значительно расширить функциональность среды, в том числе до кроссплатформенного состояния. В отличие от рассмотренных выше операционных сред, MS Visual Studio более наполнена, что делает эту среду более пригодной для опытных разработчиков, чем для новичков.

Для описания данной среды используются такие категории, как проект, решение (solution), пространство имен (namespace) и сборка (assembly). Перечисление исходных файлов и прочих ресурсов, из которых система будет строить приложение, содержит файл проекта. В решение среды Visual Studio входят несколько проектов, которые могут быть либо зависимыми, либо независимыми друг от друга. Каркас Framework.NET, обеспечивающий выполнение программ, не входит в Visual Studio, а является надстройкой над операционной системой. Минимальной единицей для развертывания приложений является сборка. Каждый тип сборки характеризуется уникальным идентификатором, определяется цифровой подписью автора и уникальным номером версии. На уровне языка C# пространство имен, аналогично пакетам в Java, служит для структурирования проекта. Пространство имен включает один или несколько классов. В одном исходном файле может определяться несколько пространств имен. В то же время, одно пространство имен может определяться в нескольких файлах.

Описанные выше программные средства сравним по функциональности, скорости работы, удобству использования, сложности, перспективности, распространенности (см. таблицу 1).

Таблица 1. Сравнение программных средств

Критерий

JDK

BlackBox

Eclipse

Visual

Studio

Функциональность

+

-

+

+

Скорость работы

-

+

+

+

Удобство использования

+

+

+

+

Сложность

-

-

-

+

Перспективность

-

-

+

+

Распространенность

+

-

-

+

Компактность

+

+

-

-

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

Список литературы Современные среды разработки программного обеспечения: обзор и анализ

  • Компьютерные технологии для работы, учёбы и бизнеса -https://hightech.in.ua
  • BlackBox Component Builder -oberon.ch
  • Microsoft Visual Studio -visualstudio.com
  • Oracle Technology Network -www.oracle.com/technetwork/ru/index.html
Статья научная