Средства разработки приложений — 2009
IBM Rational Application Developer
Разработка приложений уже давно стала деятельностью, инвестиции в которую должны быстро окупаться. Требование быстрой окупаемости разработки приложений стало особенно актуальным в нынешний период экономической турбулентности. Именно поэтому к инструментам, с помощью которых создаются современные приложения, сегодня предъявляются очень высокие требования, а успех проекта, связанного с разработкой приложений, во многом определяется удачным выбором инструментов, с помощью которых решаются задачи подобного проекта.
Настоящая статья посвящена наиболее популярным средствам разработки приложений и их особенностям. Критерием отбора инструментов для данного обзора является упоминание их в отчетах аналитических компаний, специализирующихся на анализе рынка соответствующих категорий программного обеспечения.
В настоящей статье мы не рассматриваем детальные технические особенности каждого продукта, поскольку многим из них мы планируем посвятить отдельные публикации, а остановимся лишь на основных особенностях и возможностях каждого из продуктов.
Eclipse
Eclipse — это не только инструмент, но и, что более важно, набор технологий, изменивший рынок средств разработки приложений. Технология Eclipse сегодня используется во многих известных средствах разработки (в том числе и в рассматриваемых в данном обзоре) в качестве основы для создания среды, поскольку фактически Eclipse представляет собой платформу, в которую можно добавлять расширения различных производителей.
Eclipse
Развитием Eclipse управляет некоммерческая организация Eclipse Foundation. Ее целью является создание бесплатной платформы, которую производители ПО могли бы использовать для разработки коммерческих продуктов, а также содействие сообществу разработчиков в создании расширений и инструментария для этой платформы. Сегодня данная организация включает около 200 компаний — производителей ПО, а официальный каталог расширений Eclipse насчитывает около тысячи продуктов.
Платформа Eclipse очень популярна у разработчиков Java-приложений и программного обеспечения с открытым кодом, а поскольку сейчас она поддерживает и другие языки программирования, следует ожидать еще большего роста ее популярности. Сама идея создания платформы для встраивания коммерческих расширений оказалась настолько привлекательной для производителей и коммерческого и некоммерческого ПО, что сегодня можо найти такие расширения практически на все случаи жизни, а потому можно сказать, что возможности Eclipse как инструмента огромны — им поддерживаются и все современные веб-технологии, и параллельное программирование, и grid-вычисления.
Как уже было сказано, платформа и среда Eclipse сами по себе являются продуктами с открытым кодом и доступны бесплатно, тогда как расширения Eclipse могут быть и бесплатными и коммерческими. Ее техническая поддержка осуществляется сообществом разработчиков и производителями коммерческого ПО.
IBM Rational Application Developer
IBM’s Rational Application Developer (RAD) for Websphere — это среда разработки и набор инструментов, основанные на платформе Eclipse и оптимизированные для создания приложений, выполняемых под управлением сервера приложений IBM WebSphere. С помощью RAD можно создавать приложения для платформ J2SE, J2EE, порталов, веб-приложения, веб-службы, SOA-приложения, используя встроенные визуальные средства быстрого проектирования, разработки, тестирования и развертывания. По мнению участников ежегодных опросов разработчиков, проводимых американской аналитической компанией Evans Data Corporation, среда Rational Application Developer в течение последних трех лет оценивается разработчиками наиболее высоко по сравнению с другими лидерами рынка средств разработки вследствие высокого качества всех составляющих частей и особенностей данного продукта и охвата всех аспектов проектов, связанных с разработкой приложений, — от управления требованиями до внедрения.
IBM Rational Application Developer
Отметим, что инструмент Rational Application Developer оптимизирован для выполнения приложений в среде WebSphere и в первую очередь предназначен для крупных компаний, использующих решения, основанные на серверах WebSphere Application Server и WebSphere Portal, в том числе создания на их основе корпоративных веб-служб с помощью WebSphere Feature Pack for Web Services, поддерживающих современные стандарты, принятые в этой области. Последняя версия продукта — RAD v7.5 — позволяет создавать приложения, использующие стандарты Java EE5 (EJB 3.0, JPA, JSF 1.2, JAX-WS 2.0, JSP 2.1, Servlet 2.5), поддерживает генерацию кода JavaScript, создание AJAX-приложений, а также позволяет применять адаптеры WebSphere для бизнес-приложений компаний SAP и Oracle.
RAD является составной частью портфеля продуктов семейства IBM Rational для поддержки всего жизненного цикла разработки приложений и отлично интегрирован с такими инструментами, как средство проектирования приложений Rational Software Architect (наследник знаменитого инструмента Rational Rose), управления артефактами Rational Asset Manager, коллективной работой Rational Team Concert, средствами управления качеством разработки Rational ClearCase и Rational ClearQuest, управления требованиями Rational RequisitePro, включая способы использования нескольких продуктов внутри одного экземпляра среды Eclipse.
Согласно упомянутым ранее опросам EDC, разработчики очень высоко оценивают RAD с точки зрения интеграции со средствами моделирования приложений как инструмент для создания веб-приложений и веб-служб. Высоко оцениваются также средства генерации исполняемого кода и его оптимизации и примеры, входящие в комплект поставки продукта. Отметим также, что качество технической поддержки заслужило очень высокую оценку сообщества — на английском языке техподдержка доступна круглосуточно, а кроме того, предыдущие версии продукта поддерживаются в течение многих лет.
Справедливости ради заметим, что стоимость RAD довольно высока — она составляет более 4 тыс. долл. за одну лицензию с годовой технической поддержкой.
MyEclipse
MyEclipse — это основанная на платформе Eclipse и ее расширениях среда разработки приложений, которая создана компанией Genuitec, специализирующейся на обслуживании компаний — разработчиков приложений. MyEclipse как продукт стал результатом проектов, связанных с созданием корпоративных стандартов на расширения Eclipse для различных компаний, и приобрел популярность после создания компанией Genuitec первого отладчика JSP-кода. Сегодня набор расширений, входящих в состав MyEclipse, включает средства поддержки J2SE, J2EE, баз данных, UML, технологии Java Server Faces, AJAX и генерации отчетов.
MyEclipse
Среда MyEclipse в первую очередь предназначена для разработчиков крупных компаний, в основном использующих технологии J2EE и AJAX. Помимо этого существует редакция MyEclipse Blue Edition, оптимизированная для создания приложений, выполняемых в среде сервера приложений IBM WebSphere.
По данным уже упомянутых опросов EDC, техническая поддержка MyEclipse оценивается разработчиками очень высоко — многие обнаруженные пользователями проблемы решаются в течение одного-двух часов.
Основной канал продаж MyEclipse — загрузка с сайта производителя. Тем не менее около двух лет назад компания Genuitec сделала доступным бесплатный сервис Pulse, помогающий разработчикам поддерживать совместимые версии набора расширений, автоматически проверять наличие обновлений и уведомлять о них, конфигурировать среду разработки.
Стоимость MyEclipse невысока — в зависимости от редакции она составляет от 30 до 150 долл. за годовую подписку.
Delphi
Средство разработки Delphi, созданное компанией Borland и принадлежащее сегодня компании Embarcadero, было создано еще в середине 90-х годов, когда средства визуальной разработки приложений только начали появляться. Создавая Delphi, компания Borland сумела объединить удобство и простоту визуального проектирования пользовательского интерфейса с объектно-ориентированным языком программирования и высокопроизводительным компилятором. Библиотека повторно используемых компонентов Visual Component Library (VCL), входящая в комплект поставки продукта и используемая при создании приложений, может быть пополнена компонентами сторонних разработчиков. Последняя версия Delphi включает средства поддержки нескольких языков программирования (Delphi, C, C++) для платформ Windows, .NET и Mono, средства моделирования приложений, поддерживает ряд современных технологий разработки веб-приложений, таких как AJAX.
Delphi
Отметим, что сообщество пользователей Delphi, существующее уже 20 лет, достаточно велико и лояльно по отношению к этому инструменту. Наиболее высоко в этом продукте разработчики ценят самые необходимые для создания приложений инструменты, такие как компилятор, отладчик, редактор кода, высоко оценивают производительность самого компилятора и высокую скорость работы созданных с его помощью приложений. Простота использования Delphi, а также способность интегрировать инструменты сторонних разработчиков и их доступность, согласно последнему опросу EDC, разработчики считают наилучшими по сравнению с другими популярными средствами разработки приложений.
Стоимость Delphi в зависимости от редакции составляет от 900 до 2000 долл.
JDeveloper
JDeveloper, являющийся бесплатным инструментом, появился более десяти лет назад, когда компания Oracle лицензировала у Borland компилятор Java. В 2001 году этот продукт был полностью переписан и на данный момент представляет собой не только средство разработки, но и платформу, используемую во всех продуктах Oracle, как в бизнес-приложениях, так и в инфраструктурных продуктах, и включающую средства администрирования баз данных, инструменты для поддержки SOA-приложений и бизнес-процессов. JDeveloper также поставляется совместно с платформой Oracle Application Framework.
Oracle JDeveloper
JDeveloper в первую очередь предназначен для разработчиков, создающих приложения для крупных компаний и участвующих в проектах внедрения бизнес-приложений, принадлежащих корпорации Oracle (EBusiness Suite, Siebel, Peoplesoft). Инструменты, доступные в комплекте поставки продукта, предназначены для всех этапов жизненного цикла приложений и включают визуальные средства UML-моделирования, инструменты для создания кода, тестирования, оптимизации, анализа, развертывания, и их качество, равно как и качество документации продукта, оценивается разработчиками очень высоко.
К слабым сторонам продукта можно отнести ограниченность сообщества разработчиков и небольшое число расширений для него от независимых производителей, даже при том что аудитория пользователей этого продукта отнюдь не исчерпывается компаниями, внедряющими решения на основе продуктов Oracle.
Adobe Creative Suite
Adobe Creative Suite — наследник известного набора инструментов Macromedia Studio, состоящего из Dreamweaver 8, Flash 8, Flash 8 Video Converter, Fireworks 8, Contribute 3 и FlashPaper. В отличие от большинства современных средств разработки,
Adobe Creative Suite
Adobe Creative Suite происходит от дизайнерских инструментов и предназначен для создания привлекательных динамических веб-сайтов, поэтому включает инструменты для создания графики, анимации, обработки видео- и аудиоданных. Именно поэтому разработчики считают Adobe Creative Suite (а точнее, средства программирования, включенные в соответствующие инструменты) наилучшим средством для создания веб-приложений.
Microsoft Visual Studio
Visual Studio представляет собой среду разработки, ориентированную на платформу Microsoft .NET и включающую инструменты Visual C++, Visual Basic, Visual C# и Visual J#. С помощью Visual Studio можно создавать широкий спектр Windows- и веб-приложений, веб-служб и приложений для мобильных устройств.
Сегодня Microsoft Visual Studio — лидер по количеству пользователей во всех странах мира: их число примерно вдвое превышает число пользователей любого из конкурирующих продуктов.
Microsoft Visual Studio
Последняя версия продукта, Visual Studio 2008, поддерживает несколько версий .NET Framework, разработку AJAX-приложений, язык LINQ (language integrated query) для упрощения создания приложений с базами данных.
Разработчики высоко оценивают редактор кода и отладчик Visual Studio, равно как и простоту использования продукта, но наиболее важными они считают многочисленность и качество сообщества разработчиков, поддерживаемое компанией Microsoft в течение очень долгого времени, — ведь именно объем и качество сообщества упрощают решение многих задач, стоящих перед разработчиками (в том числе и поиск работы). В целом отметим, что работа с разработчиками и стимулирование их к созданию приложений для Windows и .NET сейчас является одним из важных стратегических направлений компании Microsoft. А вот средства профилирования кода и моделирования приложений, входящие в Visual Studio, оценены разработчиками пока не столь высоко.
Visual Studio предназначена для различных категорий разработчиков — от любителей до авторов корпоративных бизнес-приложений. Стоимость различных редакций этого продукта варьируется от 300 до 800 долл.
NetBeans
Средство разработки Java-приложений NetBeans было создано в середине 90-х годов и приобретено в 1999 году компанией Sun Microsystems, которая в 2000-м перевела этот продукт в категорию ПО с открытым кодом. Основная идея данного инструмента, во многом сходная с идеей Eclipse, заключалась в модульности среды и ее расширяемости за счет модулей независимых производителей.
NetBeans
Сегодня среда NetBeans представляет собой платформу с открытым кодом, поддерживающую все типы Java-приложений (J2SE, J2EE, мобильные и веб-приложения) и включающую средства контроля версий и рефакторинга, а также средства поддержки языков, отличных от Java, таких как Ruby, JRuby, JavaScript, PHP, и технологии AJAX. Особенностью этого продукта является простота установки и конфигурации (точнее, практически полное отсутствие нужды в последней).
Разработчиками высоко оценены редактор кода, отладчик и средства компиляции приложений.
NetBeans доступен для свободной загрузки на соответствующем веб-сайте и поддерживается сообществом разработчиков. Однако доступна и платная техническая поддержка продукта от компании Sun Microsystems.
Sun Studio
Sun Studio — это среда разработки компании Sun для языков C, C++ и Fortran, основанная на платформе NetBeans, поддерживающая платформы Solaris, OpenSolaris и Linux и рассчитанная на оптимизацию производительности обработки данных с помощью многоядерных процессоров Sun SPARC, а также двух- и четырехъядерных процессоров Intel и AMD. Производительность приложений, созданных с помощью Sun Studio, оценена разработчиками очень высоко.
Sun Studio
Аудитория Sun Studio — разработчики, создающие приложения для серверов Sun (в основном эти серверы применяются в телекоммуникационных компаниях и финансовом секторе).
Среда Sun Studio доступна для свободной загрузки, но не является продуктом с открытым кодом, и количество дополнений независимых производителей для нее совсем невелико.
Sun Studio включает полный набор инструментов, требующихся для разработки приложений: среду разработки, оптимизирующие компиляторы с автоматическим распараллеливанием вычислений, высокопроизводительные библиотеки. Однако основной отличительной особенностью данного инструмента является великолепная поддержка параллельного программирования на уровне компиляторов, средства профилирования и анализа потоков вычислений, поддержка многопроцессорных вычислений. Вследствие этого данный продукт привлекателен для разработчиков, которые хотят сделать созданные ранее приложения многопоточными или выполняющимися на нескольких процессорах с целью повышения их производительности.
***
Итак, мы рассмотрели основные возможности наиболее популярных средств разработки. Подробнее о некоторых из них вы сможете узнать в следующих номерах журнала.