Вот и наступил новый год, такой долгожданный для всех, кому небезразлична судьба Java. Многие отраслевые аналитики и специалисты утверждают, что нынешний год должен стать переломным для Java. Все с нетерпением ждут выпуска новой, существенно переработанной версии JDK, призванной положить конец так мешающей всем путанице с поддержкой различных промежуточных версий Java. JDK 1.2 должен определить стандарты на достаточно долгий срок, чтобы производители успели их освоить.
Перед выпуском окончательной версии JDK 1.2 пройдет тщательнейшую проверку на совместимость в специальном центре, недавно созданном совместными усилиями ведущих производителей ПО, сделавших ставку на Java. С новой версией JDK действительно связаны надежды на преодоление многих характерных для предыдущей версии ограничений, препятствующих сегодня широкомасштабному применению Java (см. статью "JDK 1.2: еще не совершенство...").
Но все же судьба Java в основном будет определяться появлением реальных приложений, доказывающих жизнеспособность замечательных идей, заложенных в этот язык и обусловивших его беспрецедентную популярность. Это прежде всего относится к принципу "Написано однажды - работает везде", который до сих пор практически не воплощен в реальность. Как показали недавние испытания, проведенные еженедельником InfoWorld (см. JW #5), даже создание Java-апплета, полностью соответствующего критерию 100% Pure Java, в настоящее время не может гарантировать его полной переносимости. Кто в этом виноват - сама программа, виртуальная машина, работающая на конкретной платформе, браузер или операционная система - понять практически невозможно. А конечным пользователям разбираться в этом и вовсе неинтересно.
Удастся ли кому-либо в новом году создать действительно переносимое приложение, способное в корне изменить ситуацию? Речь, конечно же, идет не о маленьком тестовом апплете, а о реальном коммерческом приложении, которое можно будет отдать пользователю, сказав, к примеру: "Вот тебе текстовый редактор. Ты можешь запустить его на ПК, NC, Macintosh или Unix, и он везде будет работать одинаково". Мечты? Возможно. Но до тех пор пока этого не случится, вряд ли имеет смысл всерьез говорить о переносимости приложений и кросс-платформенных возможностях Java.
Похоже, серьезную заявку на успех сделала компания Lotus Development, выпустив в декабре прошлого года предварительную версию нового комплекта офисных приложений eSuite, полностью написанного на Java. Окончательная версия продукта должна появиться уже в первом квартале этого года. В середине декабря мне довелось побывать на пресс-конференции, организованной московскими представительствами Sun и Lotus, где состоялась презентация нового продукта. Все услышанное и увиденное вызвало у меня достаточно противоречивые мысли, которыми я и хочу поделиться с читателями.
Сначала о самом продукте и предпосылках его появления. Утверждение, что современные офисные приложения чересчур "тяжеловесны", сложны и весьма требовательны к ресурсам компьютера, давно стало расхожим. За короткое время существования очередной версии текстового процессора пользователи не успевают освоить и половины ее новых возможностей. Технические специалисты стонут от непомерной нагрузки, связанной с обслуживанием множества приложений, работающих на имеющихся платформах. Все это действительно так, и вряд ли кто-то станет сегодня оспаривать остроту подобных проблем.
Решение, предлагаемое Lotus, состоит в замене нынешних приложений-монстров "легковесными" Java-апплетами, способными быстро загружаться с сервера и выполнять все основные задачи, необходимые пользователю для повседневной работы. В eSuite входят апплеты, выполняющие функции текстового процессора, электронных таблиц, календаря, адресной книги, Web-браузера, почтового ящика, редактора презентаций и менеджера файлов. Все апплеты запускаются из единой рабочей среды, которая значительно проще, чем интерфейс Windows. Как утверждают представители Lotus, основное преимущество нового интерфейса - его ориентация на решение конкретных задач пользователя, а не на работу с приложениями. Каждый входящий в комплект апплет позволяет выполнять некий набор базовых функций, который, конечно же, далек от того, что мы привыкли видеть в полноценных офисных приложениях. Однако, по мнению Lotus, он вполне достаточен для типичного пользователя. За счет этого размер каждого апплета не будет превышать 500 Кбайт, и его можно будет легко загружать из сети.
Кроме базового комплекта, названного eSuite WorkPlace, Lotus планирует выпустить пакет eSuite DevPack, содержащий все инструментальные средства, необходимые для настройки и расширения функций базового комплекта в соответствии с решаемыми пользователями задачами. Например, если сотруднику отдела кадров требуется доступ к корпоративной базе данных, хранящейся на мэйнфрейме, соответствующий модуль просто интегрируется в его рабочее пространство.
Все это подкупает прежде всего своей простотой. Ни один пользователь, даже тот, кто впервые сел за компьютер, не сможет заблудиться в интуитивно понятной рабочей среде eSuite, а отсутствие большого числа функций и возможностей позволит полностью освоиться с программами буквально за несколько минут (ну, в крайнем случае дней). Технические сотрудники организации, отвечающие за обслуживание приложений, также будут довольны. Поддерживать такой простой комплект приложений "на все случаи жизни" (да к тому же хранящийся в единственном экземпляре на сервере) значительно проще. А для менеджеров отделов ИТ это означает еще и существенное сокращение затрат. Здорово!
А теперь немного дегтя. Как вы думаете, стала бы такая большая и серьезная компания, как Microsoft, из года в год совершенствовать свой офисный пакет и наращивать его возможности, если бы того не требовали пользователи? Очень сомневаюсь. Учитывая тот факт, что Microsoft Office занимает сейчас даже не лидирующее, а доминирующее положение на рынке, вряд можно упрекнуть компанию в том, что она не считается с реальными потребностями пользователей. Я вовсе не хочу сказать, что Microsoft Office - идеальный офисный комплект, но наличие в нем огромного количества функций несомненно свидетельствует о том, что ими кто-то пользуется. Значит, это кому-нибудь нужно?
Здесь нелишне было бы вспомнить судьбу пакета Corel Office for Java, буквально "на ура" принятого пользователями и аналитиками в недалеком прошлом. Идея Corel создать набор облегченных приложений, полностью написанных на Java, была во многом схожа с нынешней, продвигаемой Lotus. Corel даже довела свой продукт до стадии общедоступной бета-версии, которую можно было бесплатно загрузить с Web-сервера. Но тут-то и выяснилось, что хотя пользователям действительно требуется не более 10% всех возможностей обычного офисного пакета, но эти 10% для каждого пользователя свои. И когда, следуя пожеланиям участников бета-тестирования, Corel начала постепенно расширять возможности своего комплекта, он превратился в совершенно неподъемную конструкцию. Компании так и не удалось довести ее до работоспособного состояния.
Не ждет ли такая же судьба eSuite? Поживем - увидим. Кстати, в отличие от Corel, компания Lotus еще не выпустила общедоступной бета-версии (по крайней мере, на момент написания этой статьи мне не удалось обнаружить на сервере http://esuite.lotus.com кнопки типа "Download it now!"), так что говорить о какой-либо реакции пользователей еще рано. В нашем распоряжении есть пока лишь красивые копии экрана и рекламные материалы Lotus, в большом количестве лежащие на упомянутом сервере. Как можно сырую предварительную версию менее чем за три месяца довести до состояния релиза, я, честно говоря, не очень понимаю. Тем не менее срок выпуска намечен и цены определены. Кстати, в марте Lotus собирается выпустить и локализованную версию eSuite специально для российского рынка.
Еще одна ложка дегтя. Lotus утверждает, что eSuite работает на любой платформе, поддерживающей Java 1.1, включая PC и NC. Означает ли это, что будет выпущен единый комплект приложений, которые смогут работать на любой платформе? Похоже, что нет. В материалах Lotus говорится: сначала будет выпущен вариант для NC, а со временем появятся версии и для других платформ. Либо я чего-то не понимаю, либо тут опять какие-то проблемы с переносимостью. Ведь по идее все различия между версиями должны сводиться к использованию на каждой платформе соответствующей виртуальной машины Java. А если это не так, то корпоративные заказчики опять будут вынуждены приобретать и поддерживать отдельные версии комплекта для каждой платформы. Не противоречит ли это основной концепции eSuite? И о какой экономии затрат может тогда идти речь?
И последнее. Несмотря на утверждение Lotus, что пакет eSuite не позиционируется компанией в качестве полноценной замены традиционных офисных комплектов, очевидно, что он нацелен на массового пользователя. Более того, смею утверждать: если eSuite не удастся занять на рынке достаточно твердых позиций, свидетельствующих о наличии массового спроса, то ни о каком коммерческом успехе проекта и речи быть не может. А значит, у Lotus не будет возможности поддерживать и развивать свое ПО. А чтобы обеспечить массовый спрос, одного технологического превосходства, как известно, недостаточно. В данном же случае Lotus придется противостоять мощнейшей в отрасли маркетинговой машине Microsoft, не раз доказывавшей свою способность вытеснить с рынка практически любого конкурента (кстати, ситуация на рынке офисных комплектов наглядно это демонстрирует).
Все вышесказанное вовсе не означает, что я настроен скептически в отношении перспектив eSuite. Более того, я считаю лежащие в его основе идеи исключительно правильными и заслуживающими самого пристального внимания. Однако идеи идеями, а реальность обычно такова, что новые концепции (особенно революционным образом меняющие идеологию построения корпоративных вычислительных систем) внедряются гораздо медленнее, чем того хотелось бы их авторам. Встав на этот нелегкий путь, компании Sun, Lotus и прочие приверженцы Java, видимо, хорошо понимают, что к успеху он приведет не скоро и основная борьба развернется не на технологическом, а на идеологическом уровне. По существу, Sun и ее сторонникам необходимо сделать то, что в свое время удалось совершить Microsoft, продвигая Windows, - я имею в виду переворот в массовом сознании. Что ж, остается только пожелать им успеха.
Игорь Ковалерчик - главный редактор JavaWorld Россия. Адрес его электронной почты: opensys@online.ru.