Разделы

Интернет Интернет-ПО

Oracle готовит "перезагрузку" Java

После выпуска Java 6 в 2006 г. развитие платформы Java фактически застопорилось. Но, как сообщил CNews Хенрик Столь, старший директор по стратегии развития продуктов Oracle, в ближайшем будущем Oracle намерена сполна выплатить давний долг: в 2011 и 2012 гг. будут выпущены релизы Java 7 и Java 8, а впоследствии планируется перейти к регулярному выпуску новой версии каждые два года.

Последние годы существования компании Sun Microsystems были противоречивыми с точки зрения развития платформы Java. После выпуска версии Java SE 6 в 2006 г. был нарушен график выпуска новых версий Java, предполагавший обновленные релизы платформы раз в два года, а согласование спецификаций следующего релиза застопорилось — отчасти из-за бесконечных конфликтов Sun с партнерами-конкурентами (прежде всего, IBM), отчасти — из-за неопределенной финансовой ситуации в самой Sun Microsystems.

Но в том же 2006 г. Sun Microsystems приступила к публикации исходных кодов Java на условиях лицензии GNU GPL. Хотя для публикации всех необходимых компонентов платформы на условиях свободной лицензии потребовалось еще несколько лет, открытие исходных текстов позволило Sun существенно улучшить свои позиции в сообществе разработчиков, где решения с открытым кодом на протяжении 2000-х гг. становились все более популярны.

Примерно в этом состоянии технология Java досталась Oracle в 2009 г. в результате приобретения Sun Microsystems. С одной стороны, Java воспринималась как наиболее респектабельная технология создания приложений корпоративного уровня и пользовалась поддержкой сообщества ПО с открытым кодом. С другой — процесс развития самой технологии увяз в противоречиях. В результате платформа Java по сути перестала развиваться и даже отчасти стала восприниматься как устаревающая.

Тренды разных языков программирования в вакансиях на трудовом рынке США

Источник: indeed.com, 2011

Все это не означает, что рыночные позиции или реальные масштабы использования Java были сколь-либо существенным образом поколеблены: как показал в своем специальном исследовании на эту тему аналитик агентства RedMonk Стивен О'Грейди, Java по-прежнему остается наиболее востребованной технологией разработки при найме новых сотрудников, программисты продолжают испытывать к Java устойчивый интерес, превосходящий интерес к любой из альтернативных платформ. Но что важнее всего — на Java продолжают создаваться новые инновационные проекты, такие как Cassandra, Jenkins, Hadoop и HBase.

Приоритеты Sun и приоритеты Oracle

Однако что именно мешало Sun развивать Java по графику? Для того, чтобы ответить на этот вопрос, следует описать, как происходит разработка спецификаций в рамках процесса Java Community Process (JCP), где сосредоточена вся работа по усовершенствованию технологий Java. "На ранних этапах разработки Java сначала появлялись спецификации, и лишь после этого создавались реализации в соответствии с этими спецификациями, – сообщил CNews Хенрик Столь, старший директор по стратегии развития продуктов, штаб-квартира корпорации Oracle, и официальный спикер Oracle по направлению Java. – Но с течением времени и по мере созревания платформы Java, значительная часть разработки и инновационной активности стала проистекать уже не в рамках JCP, а в других местах".

Александр Бабкин, Газпромбанк: Сейчас иностранные ИБ-решения в Газпромбанке замещены на 65%
безопасность

Таким образом, в конце 2000-х годов вопрос о развитии спецификаций Java по сути стал вопросом поиска компромисса между различными конкурирующими между собой реализациями платформы Java: как от коммерческих компаний, таких как IBM и Oracle, так и от проектов с открытым кодом, таких как OpenJDK, Apache и Eclipse. А именно компромиссы давались компании Sun Microsystems в последние годы ее существования особенно трудно.

История с Apache Software Foundation

Несмотря на то, что Oracle удается находить общий язык с представителями корпоративного сектора, заинтересованными в развитии платформы Java, этого нельзя сказать о некоммерческой организации Apache Software Foundation (ASF), в рамках которой развиваются многие проекты с открытым кодом, которые являются реализациями спецификаций Java или базируются на технологиях Java.

Неоднократные попытки ASF сертифицировать свою реализацию Java, известную как Harmony, не увенчались успехом, поскольку Oracle отказывалась предоставить ASF необходимые для такой сертификации инструменты. После того, как попытка ASF найти поддержку у других участников JCP провалилась, в декабре 2010 г. ASF официально объявила о своем выходе из JCP.

По словам Хенрика Столя, существенная разница между Sun и Oracle заключается в том, что Sun стремилась (увы, безуспешно) изыскать новые способы зарабатывать деньги на Java и потому была несвободна в своих решениях, в то время как для Oracle Java представляет собой стратегически важную технологию, на основе которой работает практически все ПО связующего слоя (middleware), приносящее Oracle существенную прибыль.

"Мы вложили в разработку ПО на основе Java порядка ста тысяч человеко-лет, – говорит Хенрик Столь. – Таким образом, для нас инвестирование в Java — это, в сущности, обеспечение наших собственных долгосрочных интересов. Мы не думаем о том, как заработать деньги на Java, потому что Java уже давно их нам приносит".

В этом свете становится более понятно, почему Oracle удалось достаточно быстро устранить разногласия с партнерами и объединить вокруг проекта OpenJDK крупнейшие ИТ-компании, в том числе, IBM, которая ранее предпочитала поддерживать альтернативную реализацию платформы Java, развиваемую в рамках сообщества Apache Foundation. Если два года назад проект OpenJDK был лишь одной из нескольких перспективных реализаций Java, то сегодня Oracle удалось превратить его в магистральный проект, в рамках которого будет осуществляться совершенствование платформы.