убежден, что Java вкупе с понятием тонкого клиента позволит выиграть битву с майкрософтовским понятием настольного ПК, что приведет к дальнейшему процветанию сосредоточенных в Palo Alto производителей аппаратных серверов и написанного на Java ПО. Так что если Вы хотите в 1998 г. разбогатеть, то Вам надо сделаться "тощим" - по крайней мере, такой взгляд на перспективы развертывания новой технологии существует. Но реальна ли эта перспектива?
Компания Sun делает ставку на централизованные вычисления - ту же идею, которая IBM обеспечила в 70-е гг. господство над всем компьютерным миром. Только теперь, в отличие от тех далеких лет, централизация воплощается в виде Web - серверов, соединенных с настольными клиентами через Internet, intranet или виртуальную частную сеть. Предполагается, что тяжелые вычисления станут прерогативой мощных UNIX - серверов, в то время как настольные вычислительные блоки, как раз и получившие наименование "тонких клиентов", будут выполнять большинство легковесных функций интерфейса пользователя. Клиенты не случайно названы "тонкими": ведь они вовсе не должны иметь все присущие настольным ПК характеристики; и тем не менее, смогут делать все, то же, что и ПК - они подсоединены к мощному серверу. По крайней мере, так дело обстоит теоретически.
Однако широкое использование аргументов, связанных с "Совокупной стоимостью владения" (Total Cost of Ownership - TCO) и предназначенных для того, чтобы убедить потребителей "похудеть", до сих пор большого впечатления на них не произвело. Затеянная Sun рискованная игра с декларированными ставками на тонких клиентов, на практике пока что материализуется медленно, что заставляет аналитиков задуматься: а все ли карты в этой игре открыты? Может быть, надо не "худеть", а "толстеть"?
И действительно: пока внимание компьютерной индустрии приковано к Java и тяжбе между Sun и Microsoft на предмет чистого кофе, реальный вопрос, находящийся пока в тени, совсем другой. И это отнюдь не тонкие клиенты, а то, что называется связующим ПО (middleware). Скорее всего анти-майкрософтовские силы затуманивают суть дела. А она в том, что именно позиционируемое на сервере связующее ПО и будет в центре той реальной компьютерной войны, которая вот-вот станет всем очевидной. Эта "middleware war" в 1998 г. сменит "Java war" прошлого года. Связующее ПО - это тот не имеющий лица слой ПО, который обеспечивает общение серверов с клиентами. По существу, это программный эквивалент сетевых маршрутизаторов, коммутаторов и кабелей. Если TCP/IP - "lingua franca" Сети, то "middleware" можно назвать "lingua franca" сетевого ПО. И тут уместно спросить: а каков стандарт связующего ПО? И какой язык наиболее подходит для его разработки?
Здесь сюжет усложняется. Не так важен язык Java, как JVM (Java Virtual Machine); точно так же Java - апплеты не столь принципиальны по сравнению с JavaBeans на серверной стороне. Если Sun или кто-то столь же расторопный сможет определить API для некоторого универсального промежуточного ПО, то он получит власть над миром компьютерной индустрии - по крайней мере, на какое-то время. Вот и причина для продвижения протокола IIOP (Internet Inter-ORB Protocol), который делает совместимым CORBA и JavaBeans. Пропоненты IIOP надеются, что потребители отвернутся от MS DCOM (Distributed Component Object Model) - известного широкой публике как ActiveX, если они получат IIOP - протокол, обеспечивающий универсальный стандарт, охватывающий все платформы - а не только Wintel. Ну, а независимость производителей должна привести к большей свободе выбора при дальнейшем движении к новому компьютерному ландшафту; между прочим, ИТ - менеджеры тоже любят такого рода свободу!
Что же ожидает нас в будущем с точки зрения компании Sun? Во-первых, вытеснение настольной платформы Wintel, вместо которой как раз и будут развертываться тонкие клиенты, смасштабированные в зависимости от приложения - в диапазоне от наручных часов до портативных и настольных вычислителей. Эти устройства будут работать под разными операционными системами, но коммуникация между ними будет осуществляться через "Java dial tone" - например, через TCP/IP, HTTP, IIOP и JavaBeans - компоненты.
Во-вторых, вытеснение Windows 98; ее место займут браузеры, которые примут вид объектно-ориентированных контейнеров для настольных приложений. Компоненты JavaBean займут место встраиваемых по принципу "plug-in" браузеров. При этом разработка приложений будет совпадать с разработкой JavaBean - это как раз то, для чего все и затевалось - сильнейший удар по позициям Microsoft.
В-третьих, вытеснение Windows NT с серверного уровня. Приложения на серверной стороне станут использовать компонентную технологию Java, которая будет следовать стандарту интероперабельности IIOP/CORBA - вместо ActiveX.
Таковы три больших шага, с помощью которых компания Sun рассчитывает потеснить Microsoft. И этот процесс стартовал в 1997 г. после декабрьского обнародования спецификации Enterprise JavaBean (EJB), определившей (возможно, на все следующее десятилетие) принципы организации вычислений на основе компонентов и опоры на серверы. EJB обещает инструмент, который позволит строить системы уровня предприятия на основе технологии "drag-and-drop", что, по некоторым оценкам, обеспечит выигрыш во времени создания по сравнению с использованием инструментария на основе С++ в 3 - 4 раза.
Практически в то же время компания Oracle анонсировала свой продукт Oracle Applications 10.7 NCA - основанный на "чистом" Java и дающий полный набор приложений на Java - пакетах. Netscape разрабатывает все свои внутренние приложения на основе технологии JavaBean. Компания Sybase сделала свою первую реализацию встроенной Java в Adaptive Server ver. 11.5. Versant - известный поставщик объектных СУБД - анонсировал поддержку Java в ODBMS 5. Наконец, IBM расширяет поддержку Java в своей DB2.
Итак, компания Sun реально возглавила сегодня движение по обустройству анти-майкрософтовского сегмента индустрии. И можно констатировать, что Java, JavaBeans и IIOP получают все большую поддержку потребителей. Так, производители СУБД подумывают о замене SQL на Java - SQL оказался не столь переносимым, а, следовательно, разработчики объектных приложений опасаются использовать унаследованный процедурный код во взаимозаменяемых компонентных интегрированных средах [2].
Год 1998 должен определить, чей путь к связующему ПО - ActiveX от MS или JavaBeans вместе с IIOP компании Sun - получит признание. Ставки в этом противостоянии велики - определяется, кто будет доминировать в компьютерной индустрии. Поэтому рискну предсказать, что уже в самом обозримом будущем мы окажемся свидетелями необычного - на первый взгляд - поведения главных игроков. И не удивлюсь, если Sun со товарищи перенесет акцент в своем маркетинге с "тонких" вычислителей на реализацию связующего ПО, и именно это приведет ее к дальнейшему преуспеванию. Так что не торопитесь становиться тощими!
Литература
- Ed Zander "Sun's vision from mover and shaper", - San Jose Mercury news, Dec. 27, 1997, pp. 3E
- Rich Levin "Java for the Enterpise", - Information Week, Dec.8, 1997, pp. 18-20
Как мне стало известно, в московском еженедельнике Computer Weekly #9, 1998 была напечатана моя статья "Как исправить недостатки Java". Читателям журнала "Открытые Системы" этот материал знаком - это часть статьи "О Java по Гамбургскому счету", опубликованной в #6, 1997, которая была написана специально для журнала "Открытые Системы" на основе моих публикаций в изданиях IEEE Internet Computing и Computer. Очевидно, именно из IEEE Internet Computing #9, 1997 и был взят для перевода опубликованный в Computer Weekly текст, имевший оригинальное название "Bringing Up Java".
Позвольте заявить, что ни я, ни, как выяснилось, IEEE Computer Society не давали разрешения на публикацию моей статьи в еженедельнике Computer Weekly, которая к тому же не была снабжена там знаком "Copyright" и даже не содержала какой-либо ссылки на источник (за исключением моей фамилии). Таким образом, данная публикация имеет явно пиратский характер.
Во всем цивилизованном мире автора принято ставить в известность о намерении напечатать его текст; тем более, что я сохраняю права на воспроизведение всех моих публикаций, напечатанных в изданиях IEEE Computer Society, которое имеет лишь "право первой публикации" ("first serial rights"). Если бы представители редакции еженедельника Computer Weekly обратились в IEEE Computer Society или в редакцию IEEE Internet Computing, то там им бы это объяснили.
Я надеюсь, что данный прискорбный случай является лишь случайным эпизодом со стороны одного единственного издания, а российское компьютерное сообщество в целом уважает интеллектуальную собственность.
В заключение позвольте сказать, что я предоставил право журналу "Открытые системы" быть единственным в России изданием, имеющим право на воспроизведение моих материалов на русском языке.
Technology assessment Group,
Corte Lindo, Salinas, CA 8 апреля 1998 г.