Письмо в редакцию

 

В противоположность утверждению Сергея Дунаева (PC Week/RE, № 39/97, с. 77), “Джаву” у нас (как и “у них”) любят очень многие. Технология Java вполне закономерно стала для программистов воплощением идеала и обозначила путь выхода из того, во что они сами с энтузиазмом вляпались. Другой вопрос, куда этот путь ведет.

 

Позволю себе привести несколько исторических фактов. До начала восьмидесятых годов программы, как правило, свободно переносились с машины на машину лишь одного поставщика, а понятие “платформа” совпадало с маркой компьютера. Это, естественно, породило монополии, основанные на “железе”  -  IBM, DEC.

 

Затем на арену вышла другая модель. Теперь программы не зависят от марки компьютера, вы можете “написав однажды, выполнять повсюду”, конечно, при условии, что “повсюду” стоит Intel внутри и Microsoft  -  снаружи. Поначалу это всем очень нравилось, многие называли такую платформу “открытой”, дающей равные условия всем производителям “железа” и программ. То, что платформа эта была частной собственностью MS и Intel, мало кого беспокоило: эти фирмы тогда казались маленькими и добродушными по сравнению с “большим братом”  -  IBM.

 

В итоге монополия IBM действительно была разрушена, но взамен возникли две новые, которые не только переняли все повадки предшественницы, но и во многом ее переплюнули. Вместо свободного и равного соревнования в рамках общих стандартов перед поставщиками компьютеров и программ замаячила перспектива превратиться в придатки монстров, в реселлеров с очень небольшой “добавочной стоимостью” (за что боролись, на то и напоролись).

 

Сегодня под знаменем Java идет борьба за новое наполнение термина “платформа”. Теперь это уже не марка “железа”, не операционная система в сочетании с процессором, а виртуальная машина + библиотека классов + язык. Вы снова можете “написав однажды, выполнять повсюду” при условии, что пишете на Java и что “повсюду” стоят вышеупомянутые виртуальная машина и библиотека, которые, между прочим, являются собственностью Sun. На последний факт опять никто не обращает внимания, хотя нас честно предупреждают при установке любой Java-программы (“Минздрав предупреждает, что...”).

 

Дальнейшее (в случае успеха нового движения) предугадать нетрудно. Разрушение ненавистной монополии. Воздвижение на ее осколках новой, еще похлеще прежней. Начало новой борьбы под каким-нибудь новым лозунгом. И т. д. и т. п.

 

Разумеется, возникновение и разрушение монополий  -  дело неизбежное, это будет происходить всегда. Но для тех, кто делает программы здесь и сейчас, есть более мудрый путь, нежели следование за очередной идеей, овладевшей массами. Состоит он (как это ни банально) в непредвзятом понимании слов. Так, открытым стандартом можно назвать лишь то, что действительно открыто, то есть не является чьей-либо собственностью (пусть даже собственностью общепризнанного “знаменосца открытости” и “лучезарного светоча истины”). Многие традиционные языки программирования открыты (например, Fortran, Cobol, Lisp, Smalltalk, Ada, SQL), но Java и Си++, так же как и VB с Delphi, открытыми не являются (Java  -  собственность Sun, Си++ “намертво” привязывает вас к операционной системе). А что до пресловутого лозунга “написав однажды, выполнять повсюду”, то иногда не мешает подумать, так ли хороши ваши программы, чтобы выполнять их повсюду (или хотя бы где-либо).

 

С уважением,

 

Игорь Якушевский.

Версия для печати