Перестарались?

2 ноябрь, 2010 - 15:56Вячеслав Колдовский

Одной фразы, сорвавшейся с уст Боба Маглиа, руководителя серверного и инструментального подразделения Microsoft, на проходившей на прошлой неделе конференции для разработчиков PDC10, было достаточно, чтобы посеять страх и смуту среди Silverlight-разработчиков, людей, интересующихся данной технологией, а также просто «проходивших мимо» в лице новостных ресурсов и блогов самой разной направленности падких на сенсации, слухи и домыслы.  А фраза эта, действительно может вызвать вопросы: «Our Silverlight strategy and focus going forward has shifted» («Наша стратегия в отношении Silverlight и цель дальнейшего развития изменилась»). А еще можно добавить к этому поуменьшившееся внимание к Silverlight на проходящих сессиях – их было на удивление мало, хотя на прошлогодней PDC09 эта технология была одной из центральных тем мероприятия.

Этого было достаточно, чтобы некоторые новостные ресурсы уже начали хоронить технологию, к разработке и продвижению которой Microsoft приложила просто неимоверные усилия в течение последних нескольких лет. Попытаемся разобраться в том, что произошло, и какие следует сделать из этого выводы.

Начать следует, пожалуй, с того, что заняло место Silverlight на проведенных докладах. А это самая что ни на есть непосредственно конкурирующая технология – HTML5, демонстрации поддержки которой в новом IE9 было уделено особое внимание. Да и в придачу ко всему, сессии по разработке для HTML5 были. 

Здесь, наверное, не мешало бы отметить команду разработчиков IE9, которые выкатили на суд публики одну из наиболее совершенных реализаций этого (пока еще не принятого) веб-стандарта, обещающего стать Next Big Thing в Интернете. Похоже, что по части функциональной поддержки и скорости работы (в особенности, если речь идет об аппаратной акселерации) с HTML5 в конкурентах у IE9 пока ходит только Chrome, разработчики остальных браузеров особо громко о своих достижениях на этом фронте не заявляют. Пользуясь ситуацией, майкрософтовцы не упускают возможности отправить несколько колкостей и в сторону Chrome – на их презентациях «latest beta» последнего всегда показывает более низкий FPS в графических тестах (думаю, плавающих в браузере рыбок увидели все, кто хоть немного следит за темой). Не буду разжигать холивар, да и я сам объективным тестированием браузеров не занимался, чтобы утверждать наверняка о преимуществах одного и недостатках другого, но факт остается фактом: если говорить об HTML5, то разработчикам IE9 похвастаться есть чем.

И в этом, похоже, и кроется самое вероятное объяснение происходящего: имея нечто, чем можно похвастаться, Microsoft несколько «перестаралась» в демонстрации своих достижений, чем и вызвала вполне обоснованные негодования Silverlight-разработчиков.

Боб Маглиа за свои слова уже извинился, причем прямо на официальном блоге Silverlight. К тому же практически совпавший по времени с конференцией запуск Windows Phone 7, в которой Silverlight является основной платформой для разработки, гарантирует безоблачное существование технологии, как минимум, в данной роли. Да и с Windows она тоже никуда не денется. Возможно, несколько поубавятся темпы выпуска новых версий, что связано не с угасанием интереса, а с переходом к зрелости платформы – но это к лучшему, поскольку сами разработчики заинтересованы в том, чтобы жизненный цикл одной версии платформы был, как минимум, не меньше длительности разработки проекта для нее.

Что касается HTML5, то стандарт, конечно, перспективный. Но с ним связано несколько подводных камней. В первую очередь, стандарт этот все еще не принят, и дата, когда это произойдет, пока не определена. Соответственно, любая реализация может «сломаться» если черновик будут править. Далее – стандарт достаточно сложный. Рассчитывать на то, что все браузеры будут отображать его одинаково, так же наивно, как и в отношении одинакового отображения предыдущих стандартов. Помимо прочего, существует большая вероятность того, что созданные в новом стандарте интерактивные приложения, интенсивно использующие графику и вычислительные ресурсы процессора, будут иметь проблемы с производительностью в разных браузерах под одной и той же самой ОС, что может быть вызвано различиями в реализации стандарта. Поэтому, как платформа для решений, нужных «на сегодня» HTML5 подходит недостаточно хорошо, явно проигрывая тем же Silverlight и Adobe AIR/Flash.

Вот что касается несколько отдаленного будущего, то здесь, разумеется, все может измениться. Вполне вероятен и такой вариант, что Silverlight останется платформой для разработки, а исполняться созданные с его помощью приложения будут уже в транслированном в HTML5 виде. По крайней мере, Adobe продемонстрировала неделю назад подобный трюк с Flash, чем вызвала всеобщее одобрение флеш-разработчиков, пытающихся прорваться на iOS. Действительно, подобный сценарий наконец-то смог бы объединить разрозненные и недружественные миры различных платформ и доступных только для них средств разработки. Вот только выглядит все это слишком хорошо, чтобы быть реальностью.

Ну и, наконец, если говорить о самой Microsoft, то не следует забывать, что это «компания платформ». Преждевременно хоронить своими же стараниями созданную платформу они точно не будут, да и не принято у них так легко сдаваться конкурентам (пример с той же WP7 как раз это подтверждает). Поэтому, если вопрос ставится так: на какую же технологию все-таки Microsoft делает ставку: HTML5 или Silverlight, то я бы задал встречный вопрос – а кто вообще сказал, что они должны выбирать какую-то одну? Где-где, а в Рэдмонде себе это могут позволить. ;)

P.S. Вот, кстати, в тему: результаты тестирования браузеров на совместимость с HTML5, проведенные W3C.  IE9 явный лидер. Действительно есть чем гордиться.