INTERNET

 

Эксперты предупреждают: прежде чем утолять жажду этим напитком, убедитесь, что он не "обожжет" вас

 

Представляем торговую марку Java Virtual Hype Machine ("Рекламная виртуальная машина Java"). Возьмите любой программный или аппаратный продукт, добавьте немного Java  -  и готов пресс-релиз!

 

Оставим в стороне инструментарии разработчиков, эксплуатирующие "кофейную" тему. Непрерывной чередой следуют сотовые телефоны Java, Java-микросхемы, наборы прикладных программ и 150 опубликованных на сегодняшний день книг. Не кажется ли вам, что языка Java становится слишком много? Похоже, что фирма Sun Microsystems и ее растущая дочерняя компания JavaSoft (Купертино, шт. Калифорния) так не считают. Этот феномен компьютерной индустрии 19 месяцев от роду  -  основанный на объектах платформно-независимый язык  -  практически повсеместно изменил представления о потенциальных возможностях World Wide Web.

 

Язык Java завоевал такую широкую популярность и это случилось так быстро, что не осталось почти ни одного поставщика программного или аппаратного обеспечения, который бы не изменил планы выпуска продуктов в соответствии с новой модой. По данным корпорации International Data (IDC) (Фреймингхем, шт. Массачусетс), к настоящему времени почти 200 000 разработчиков либо используют Java, либо на всякий случай изучают этот язык. Более 60 поставщиков приобрели у JavaSoft лицензию на Java и объявили о своих планах включения этого языка в операционные системы, начиная c MVS и OS/400 корпорации IBM и заканчивая Solaris фирмы Sun, Windows корпорации Microsoft, IntranetWare фирмы Novell и Mac OS фирмы Apple Computer.

 

Даже если язык Java пока еще расшевелил не всех, руководители отделов ИТ, вероятно, зря теряют время, пытаясь следовать политике постепенного внедрения. На сегодняшний день ожидания разработчиков достигли точки кипения. Часто повторяемые заклинания "пиши один раз  -  используй повсюду" и "более простой в применении, чем Си++" действуют на корпоративных разработчиков, как валерьянка на кота. Менеджеры подразделений, подогреваемые обещаниями более быстрой разработки и недорогого сопровождения, тоже становятся сторонниками Java-приложений.

 

Сторонники взвешенных подходов и некоторые аналитики советуют всем, одержимым Java, остановиться и сделать глубокий вдох. "Клиенты приписывают Java такие качества, каких у него нет",  -  считает Уильям Бландон, старший менеджер по информатизации и управлению фирмы SourceCraft (Барлингтон, шт. Массачусетс), поставщика инструментов программирования на Java.

 

Даже SunSoft стремится прояснить ситуацию. "Внедрение Java началось не так давно, -  сказал Ларри Вебер, вице-президент и главный менеджер по продуктам для разработчиков фирмы SunSoft (Маунтин-Вью, шт. Калифорния).  -  И ощутимых результатов пока еще не так много".

 

Кто-то должен нажать на кнопку сброс ожиданий "Рекламной виртуальной машины Java". Фирма JavaSoft готовится выпустить в начале 1997 г. Java Development Kit Version 1.1 (инструмент разработчика на языке Java), но менеджеры по ИТ все же должны учесть следующее.

 

- Проблемы совместимости с браузерами. Это связано с поведением небольших Java-приложений в браузерах Netscape Navigator и Microsoft Internet Explorer. "Самая кошмарная задача на сегодня  -  это добиться правильной работы Java на кишащих ошибками виртуальных машинах в этих браузерах,  -  жалуется Джо Стернлихт, менеджер компании Prodigy Services (Уайт-Плейнс, шт. Нью-Йорк), занимающийся разработкой приложений на Java.  -  Рассчитанный на две недели проект потребовал двух месяцев модификаций и настройки на браузер".

 

- Более медленное исполнение Java-приложений по сравнению с аналогичными программами, написанными на Си или Си++. "Если нам удалось убедить себя, что у Java такие же возможности, как у Си++, и что он работает так же быстро, значит, мы добились всего, чего хотели",  -  замечает Поль Маховальд, вице-президент по развитию оптовой торговли Blockbuster Entertainment Group, подразделения фирмы Viacom (Форт-Лаудердейл, шт. Флорида).

 

- Намерения корпорации Microsoft "охватить и расширить" стратегию Java. "Некоторые Java-приложения выполняются в одной системе и не выполняются в другой,  -  говорит Ира Мачевски, вице-президент Giga Information Group (Санта-Клара, шт. Калифорния).  -  С любой программой, которая может выполняться в различных системах, даже если она создана в соответствии со стандартом, будут возникать проблемы".

 

Эван Куинн, директор по исследованию программного обеспечения Internet корпорации IDC, предлагает взглянуть на проблему несовместимости с другой точки зрения. "Мы получим два класса Java-приложений: первые можно будет выполнять на любой Java-машине, а вторые будут работать чуть лучше, если использовать особенности конкретной версии",  -  считает он. Однако, как объяснил Роб Гингел, старший технический сотрудник подразделения SunSoft фирмы Sun, в таком подходе имеется изъян. "Конечно, повышение производительности  -  это замечательно, однако при этом можно потерять качество "пиши один раз  -  используй повсюду". Это ограничивает возможности Java и затушевывает те качества, которые делают этот язык особенно интересным",  -  сказал он.

 

Для Стернлихта из компании Prodigy и Бландона из фирмы SourceCraft невозможность создания Java-аплетов, которые работали бы в двух ведущих Web-браузерах без дополнительных изменений, обернулась материальными потерями из-за продления сроков разработки. "Вероятность того, что браузеры будут исполнять программу на Java, можно оценить как 0,5",  -  заметил Бландон.

 

Стернлихт утверждает, что различия между браузерами столь существенны, что ему пришлось изменить расчетные сроки окончания проекта. "Правильная стратегия менеджмента состоит в оценке временных затрат и в соответствующем увеличении сроков, в результате чего две недели превращаются в два месяца,  -  объяснил он.  -  Аналогично месяц превращается в квартал. Эта методика полезна при учете проблем, связанных с "компоновкой и доставкой", и относится только к ошибкам браузеров, но не к Internet-приложениям".

 

Дэвид Спенхофф, директор JavaSoft по маркетингу продуктов, уверен, что тест на совместимость последней версии оказался неудачным и что новая программа сертификации решит все проблемы. "Все виртуальные машины проходят одинаковое тестирование на совместимость и соответствуют спецификациям API одних и тех же платформ",  -  пояснил он.

 

Однако Боб Маглиа, вице-президент Microsoft по инструментам для разработчиков, не разделяет его уверенность: "С какой бы точки зрения вы ни смотрели сегодня на Java, мир этого языка в достаточной степени раздроблен, даже если не принимать во внимание участие Microsoft. Когда вы пишете программу на Java, вы используете разные API, будь то API, разработанные Netscape или Sun".

 

Не удивительно, что Netscape в ответ грозит пальцем Microsoft. Вот что говорит Шриват Шампат, вице-президент Netscape по серверным продуктам (Маунтин-Вью, шт. Калифорния): "Если Microsoft намеревается создать собственную версию Java, то она тем самым еще раз доказывает, что ее символ веры основывается на собственных продуктах".

 

Следующая проблема  -  быстродействие. "Некоторые информированные лица сообщают, что быстродействие недостаточно высоко для повсеместного внедрения,  -  говорит Вебер из фирмы SunSoft.  -  Я думаю, что со временем проблема скорости будет решена". JavaSoft планирует предоставить разработчикам в 1997 г. компилятор типа JIT (just in time), дополнительный продукт ее фирменной технологии ProjectSpeedway, по которой будет создан быстродействующий компилятор с языка Java. Одновременно с этим корпорация Symantec, фирма Borland International и другие поставщики ПО заполнят образовавшуюся нишу собственными JIT-компиляторами, которые должны существенно ускорить время выполнения Java-приложений.

 

БЫСТРАЯ АССИМИЛЯЦИЯ

 

Хотя быстродействие Java-приложений, исполняемых в сети, не очень высоко, они ассемблируются быстрее по сравнению с обычными объектно-ориентированными инструментами. "Это преимущество Java пока мало рекламировалось,  -  утверждает Спенхофф.  -  Программист работает быстрее".

 

Стратегия Microsoft, направленная на дополнение Java собственными расширениями, вызывает некоторые подозрения  -  не хочет ли этот гигант из Редмонда залюбить Java до смерти. Бландон из SourceCraft уверен, что политика Microsoft в отношении Java полна лицемерия. "Стратегия Microsoft состоит в том, чтобы принять Java, адаптировать его, завладеть им и затем убить,  -  рассуждает он.  -  Сейчас они находятся на стадии адаптации. Microsoft совершенно намеренно создала свой вариант JDK в противовес JDK JavaSoft. Microsoft с Java мало что выиграет".

 

Маглиа из Microsoft возражает на это, говоря, что оптимизация Java под Windows является стратегией добавления услуг  -  не больше и не меньше. "Мы охватываем Java всесторонне, и по форме, и по содержанию, и стремимся к тому, чтобы этот язык наилучшим образом использовался под Windows",  -  заявил он и добавил, что корпорация планирует создать расширения базовых Java-классов, которые позволят обращаться к API Windows. "Это аналогично тому, что мы делали с Си++",  -  объяснил он.

 

Java, несомненно, воодушевил разработчиков как в корпоративных отделах ИТ, так и у поставщиков коммерческого ПО. Несмотря на свою сравнительную незрелость, Java уже блистает на первых ролях во все большем числе проектов.

 

Билл Фелан, вице-президент по технологии чикагской компании Florists’ Transworld Delivery (FTD), сообщил, что система следующего поколения для торговых точек, которую компания разрабатывает для своих 22000 цветочных магазинов, строится на базе Java и терминалов JavaStation. Внедрить систему планируется через год-полтора. Фелан выразил уверенность в том, что подобная система позволит FTD согласовать работу 17000 персональных компьютеров и символьных терминалов. Тем не менее он добавил: "Я убежден, что технология, основанная на Java, должна еще созреть".

 

Отдел разработки Blockbuster Entertainment под руководством Маховальда в срочном порядке создает на языке Java среду хранилища данных для обработки транзакций и поддержки принятия решений. Проект начался в ноябре 1996 г., а его окончание ожидается в марте 1997 г. Маховальд говорит, что его коллектив разработчиков был недоволен Си и Си++, "поскольку эти языки слишком таинственны".

 

В конечном итоге, он надеется, что Java сплотит разобщенные команды разработчиков Blockbuster. "Это будет замечательно, если нам удастся писать на Java приложения для мэйнфрейма, AS/400 и ПК и иметь коллектив разработчиков, который будет знать один-единственный язык,  -  сказал Маховальд.  -  У них производительность сильно снижается из-за того, что группы не могут работать вместе".

 

Возможно, пока еще слишком рано строить прогнозы по поводу того, как повлияют недостатки, связанные с несовместимостью браузеров, низким быстродействием и платформо-зависимыми различиями, на энтузиазм и воодушевление, которые язык Java вызывает повсюду. Кроме того, существует странная проблема избытка информации по поводу Java. "Мне до смерти надоел этот Java",  -  признается Куинн из IDC.

 

В компании JavaSoft верят, что менеджеры ИТ справятся с гипертрофированными представлениями о Java. "Ожидания очень радужные,  -  считает Спенхофф,  -  но уже многое из обещанного выполнено".

 

Расти Уэстон

 

Со старшим редактором Расти Уэстоном можно связаться по адресу: rusty_weston@zd.com.

Факты против вымысла

 

Когда речь заходит о Java, руководители отделов ИТ оказываются под градом грандиозных обещаний. Ниже приводятся реалистичные оценки того, что можно на самом деле ожидать от этого языка.

 

Реклама: Sun утверждает, что Java  -  это тот "недостающий ингредиент", который позволит слить в единое целое "компьютерную технологию, телефонию, средства массовой информации и издательское дело, а также сферу развлечений".

 

Реальность: Java, конечно, замечательный язык для построения движущихся картинок в World Wide Web. Поговаривают еще и об использовании технологии на базе Java в сотовых телефонах, однако Sun, как всегда, ставит рекламную телегу впереди лошади.

 

Реклама: Sun утверждает, что количество денег, которые может сэкономить компания, использующая Java Computing (комбинацию ПО Java и сетевого компьютера Java), достигает "фантастической суммы 562,5 млн. долл. в год" для корпорации с 100 000 узлов распределенной сети.

 

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

 

Реклама: Sun утверждает, что приложения, основанные на Java, можно создавать в 2,5 раза быстрее, чем приложения на языках Си и Си++.

 

Реальность: Пользователи Java подтверждают, что время на разработку приложений существенно меньше, чем на Си и Си++, однако настройка этих аплетов в гетерогенной среде  -  задача очень замысловатая. Поступает информация о проблемах совместимости между Виртуальными машинами Java, разработанными разными поставщиками. Есть надежда, что так называемые "just in time", или JIT-компиляторы, улучшат характеристики производительности Java-аплетов.

 

Реклама: Java  -  простой язык.

 

Реальность: Java  -  элегантный и изящный язык, в котором отсутствуют некоторые сложные элементы Си++. Однако объектно-ориентированные языки далеко не так просты, особенно по сравнению с Visual Basic корпорации Microsoft. Один менеджер по разработке на Java утверждает, что он отводит в среднем 6 недель на переквалификацию программистов с Си++ на Java, причем они хотят изучить новый язык. Необходимая для этого литература имеется в изобилии: за недолгие 19 месяцев коммерческого существования Java опубликовано более 150 книг по этому языку.

Умеете ли вы говорить на Java’йском?

 

JIT

"Just in time"-компиляторы. Обычно программы, написанные на Java, компилируются большими порциями, а JIT-компиляторы позволяют разделить программу на более мелкие фрагменты и ускорить процесс обработки.

Java-аплеты

 

Их можно представить, как программу на языке Java, которую можно включить в HTML-страницу. Когда вы открываете Web-страницу, содержащую Java-аплет, соответствующая программа переносится в вашу систему и исполняется вашим браузером, конечно, при условии, что он совместим с Java.

JavaOS

 

Компактная операционная система, предназначенная для исполнения Java-приложений на чем угодно, начиная с Internet-компьютеров и заканчивая пейджерами. Фирма Sun Microsystems утверждает, что JavaOS будет в равной степени хорошо работать на персональном цифровом секретаре, принтере, игровой приставке, сотовом телефоне и "бесчисленном множестве других устройств". picoJava

 

Фирма Sun Microelectronics работает над по крайней мере двумя Java-микросхемами типа RISC  -  picoJava I и microJava, предназначенными для увеличения быстродействия Java-программ в различных устройствах, например в микропроцессорных телефонах и телевизионных приставках. Даже в Sun не рассчитывают увидеть широкое применение этих продуктов раньше конца 1997 г.

Java Beans

 

Набор API-компонентов, позволяющий разработчикам составлять Java-аплеты и приложения из компонентов многоразового пользования. Вот один из примеров, которые приводят в Sun: компонент типа кнопки в одном документе может контролировать функции в другом документе.

Виртуальная машина (BM) Java

 

Учение Java гласит, что это  -  ключ от королевства. ВМ Java  -  это компилятор, настроенный на различные операционные системы и микропроцессорные среды. К сожалению, между виртуальными машинами, разработанными Sun, Microsoft и Netscape Communications, существует достаточно много различий, чтобы осложнить жизнь разработчикам, рассчитывающим на межплатформную совместимость Java.

JavaStation

 

Разработанная Sun версия широко рекламируемого сетевого компьютера: ультратонкий кабель для соединения с клиентом, SPARC-терминал с операционной системой JavaOS и браузером Sun HotJava Web. Совершенно верно, локальной памяти нет. Нет мягкого диска. Нет CD-ROM. Нет наклейки Intel Inside.

Маршрутизатор Java

 

Такого на самом деле нет, по крайней мере, пока нет. В то же время фирма Ascend Communications поставляет свой конфигуратор Java-Based Pipeline Configurator для управления маршрутизатором Ascend Pipeline. Формулировка "на базе Java" может стать маркетинговым лозунгом 1997 года типа "новый и улучшенный".