“Банда четырёх” против Microsoft
Средства разработки как таковые составляют лишь чисто техническое наполнение программной индустрии, будучи необходимым инструментом, но уж никак не определяющим фактором при оценке рыночных перспектив готовых продуктов.
Наиболее важным событием 1997г. в политическом смысле стало образование в марте на конференции Internet World альянса четырёх фирм – IBM, Oracle, Netscape и Sun, назвавших себя “бандой четырёх” (The Gang of Four). Компании объявили о совместной поддержке протокола Internet InterORB-Protocol (IIOP), составляющего часть CORBA, в своих инструментальных средствах разработки. Эта инициатива должна облегчить реселлерам построение единых распределённых объектно- ориентированных программ инструментальными средствами четырёх компаний. Ело в том, что, согласно заявлению JavaSoft, в планируемом к выпуску в 1998 г. комплекте JDK1.2 низкоуровневый механизм дистанционного вызова отдельных функций Java (под названием RMI – Remote Method Invocation), включённый в ныне действующую спецификацию JDK1.1 будет реализован поверх протокола CORBA/IIOP. Это означает, что JavaSoft полностью отказывается от собственного метода создания посредника запросов к объектам, на основе которого в настоящее время строится RMI, а будущие распределённые Java-программы должны соответствовать спецификации взаимодействия сетевых объектов CORBA. Данное объединение, “антимайкрософтовской” направленности которого никто не скрывал, стало планомерным и организованным выступлением против объектной технологии DCOM корпорации Microsoft, что для 1996 г. было как раз нехарактерно. В 1997 г. намеченные альянсом планы частично были выполнены.
Компания Oracle в 1997 г. превратилась, можно сказать, из нейтральной по отношению к Java в его активную сторонницу. Одним из этапов её движения в сторону Java стало лицензирование технологии Builder, включающей языком С++ и Java, у фирмы Borland, причём решающий выбор именно в пользу Builder был сделан якобы именно по причине её более полного соответствия концепции JavaBeans. На конференции JavaOne фирма Oracle продемонстрировала пакет Developer/2000 1.4, способный конвертировать разработанные в нём программы в Java-апплеты. Сразу же после этого в начале мая 1997 г. она выпустила Web Application Server, совместимый с протоколами CORBA и IIOP, - наиболее важный компонент её межплатформенной архитектуры NCA (Networking Computing Architecture). Позже на конференции Open World Oracle представила стратегию выпуска средств разработки сетевых программ для Java. Эта стратегия, по словам представителей фирмы, должна затронуть следующие версии Developer/2000 и Designer/2000, а также некий новый инструмент, предназначенный исключительно для разработки Java-программ и построенный как раз на основе вышеупомянутой лицензии.
Самый крупный поставщик программного обеспечения на мировом рынке – корпорация IBM, наиболее ревностно взявшаяся за поддержку Java ещё в1996 г., в течение 1997г. сохранила приверженность ему. В июле IBM выпустила на рынок коммерческую версию пакета Visual Age for Java с мощными средствами реализации JavaBeans, как раз и нацеленную на разработку будущих программ на базе открытых стандартов, за которые так ратует союз четырёх. Кстати говоря, уже в сентябре 1997 г. отделение IBM Восточная Европа/Азия начало весьма активную работу по продвижению этого продукта на российский рынок. Что касается весьма амбициозного проекта (San Francisco) формирования библиотек Java-классов для самых разнообразных программ деловой сферы, над которым IBM работает в союзе с несколькими десятками других фирм, то информация о ходе его выполнения в течение 1997 г. была весьма скудной. Однако известно, что работа над проектом продолжается.
Компания Netscape, тоже на конференции JavaOne, выступила в не совсем привычной для себя роли, представив набор средств разработки, позволяющий работать с апплетами Java, компонентами JavaBeans, объектами CORBA и сценариями JavaScript.
Фирма Sun в начале 1997 г. выпустила Internet WorkShop – среду разработки программ клиент- сервер для Интернета – и основанную на CORBA среду подготовки распределённых объектов и управления ими NEO2.0. В Internet Workshop входят, вчастности, Java WorkShop и Visual WorkShop C++. Весь этот инструментарий также служит вкладом в общее дело, затеянное “бандой четырёх”. Речь пока не идет о классических средствах разработки, но может случиться так, что Sun, Netscape, IBM и Oracle действительно образуют боевое каре и, шагая в ногу, начнут организованное наступление на Microsoft.
Нельзя обойти вниманием и ещё две очень известные фирмы, вовлечённые в Java-лихорадку в 1997 г. Это Powersoft и, в особенности, Borland. В 1996 г. они не принимали сколь-нибудь заметного участия в развитии данного сектора рынка, если не считать выпуска небольшого расширения для Java-программирования в Borland C++5.0. Зато в 1997 г. не только были выпущены две версии JBuilder (Standard и Professional) , но и стало известно, что данный продукт в дальнейшем будет объединен с вышеупомянутым проектом San Francisco. Фирма Borland, лицензировала технологию Builder компании Oracle и, в свою очередь, в начале 1997 г. приобрела лицензию на программу посредник запросов к объектам VisiBroker for Java фирмы Visigenic (а в ноябре и саму фирму), что позволит разработчикам Jbuilder связывать объекты распределённых программ, используя протокол IIOP. Всё это свидетельствует, что испытывающая трудности, но в то же время очень авторитетная компания, специализирующаяся исключительно на средствах разработки, оказалась в 1998 г. в значительной степени привязана к идеологии построения программ, проповедуемой “великолепной четвёркой”.
Действия Microsoft
Ещё в декабре 1996 г. SunSoft заявила, что виртуальная машина Java, разработанная Microsoft для Windows, не удовлетворяет соответствующей спецификации. Выпуск Visual J++ в марте 1997г. в составе пакета Visual Studio 97 в некотором роде усугубил ситуацию. Широко разрекламированная способность данного продукта интегрировать технологии JavaBeans и ActiveX, имеющаяся, казалось бы, и в других средствах разработки, была воспринята основной частью компьютерного сообщества, как попытка искусственно привязать Java к платформе Windows. Иными словами, получалось, получалось, что Microsoft мошенничает, выпуская суррогат для Java, принимающий облик Java лишь на платформе Windows. Ничего не подозревающие разработчики для Windows, коих в мире множество должны были по замыслу Microsoft, создать большое количество соответствующих программ, используя “фиктивный ” Java, прежде чем вскроются проблемы с его переносимостью на другие платформы. Субъективное недоверие, сидящее в крови у многих профессионалов компьютерного бизнеса, подкреплялось и объективными факторами.
Дело в том, что компания Билла Гейтса на протяжении 1997 г. так и не присоединилась к программе сертификации 100% Pure Java фирмы JavaSoft, позволяющей, по утверждению самой JavaSoft, гарантировать полную межплатформенную переносимость. В интервью, данном одним из ведущих менеджеров корпорации Microsoft журналу Communication Week ещё в начале 1997 г., говорилось, что все средства разработки, в том числе и JVM для Windows, успешно прошли все тесты Sun на совместимость с Java. Было также заявлено, что Microsoft просто не пригласили к участию в инициативе 100% Pure Java, а отказ от участия в ней – выдумка Sun. Вместе с тем директор по маркетингу продукции фирмы JavaSoft Дэвид Спенхофф на страницах газеты LanTimes, назвав небезызвестную библиотеку классов AFC несоответствующей Java-спецификации, недвусмысленно призывал Microsoft представить её на тестирование по программе 100% Pure Java. Позже, однако, ответственные работники Microsoft на страницах других изданий декларировали невозможность присоединиться к Pure Java из-за того, что эта программа, целиком контролируемая Sun, не может быть истинным стандартом.
В следующие месяцы ситуация не улучшалась. Объявленная в апреле 1997 г. предварительная 4-ая версия Java-машины никак не повлияла на развитие конфликта. Летом Microsoft представила новую технологию J/Direct как добавление к виртуальной машине Java, поставляемой вместе с IE4.0. данная технология даёт возможность получать доступ из Java-программ напрямую к функциям программного интерфейса Windows. Microsoft трактует её как некое расширение, позволяющее свободно манипулировать вызовами функций, которые в настоящее время отсутствуют в Java. Таким образом, если схематично представить виртуальную машину в виде некоторого изолирующего слоя, то J/Direct – не что иное, как дыра в этой изоляции.
Компьютерная пресса, ещё в начале года публиковавшая весьма положительные отзывы о том же Visual J++, все чаще и откровенно начала называть J/Direct и прочие приобретения Microsoft в отношении Java опасным искушением для разработчиков. Редакция американские газеты PCWeek во второй половине года весьма недвусмысленно призвала разработчиков никогда не использовать различные расширения Java, предлагаемые Microsoft для Windows.
Тем временем конфликт усугубился и зашёл настолько далеко, насколько это вообще возможно. Осенью 1997 г. Sun подала на Microsoft в суд. Официальная претензия состояла в том, что IE4.0 не прошёл тестов на совместимость, а следовательно, Microsoft не имеет никакого права на использование логотипа Java/.