В начале апреля Google объявил о разработке нового браузерного движка под названием Blink. В скором времени его встроят в Chrome и Opera — сначала на персональных компьютерах, а затем, вероятно, и на мобильных устройствах. Должно ли это вызывать беспокойство у веб-разработчиков?
Blink написан не с нуля. Новый движок представляет собой модификацию WebKit, которую в Google планируют развивать самостоятельно. Планируемые изменения сделают его код несовместимым с обычным кодом WebKit, а со временем, по всей видимости, появятся отличия, заметные не только создателям браузеров, но и веб-разработчикам.
Особенности и недостатки разных браузерных движков — это вечная головная боль для тех, кто делает сайты. Все их приходится учитывать, тратя на это уйму сил и времени, для которых можно было бы найти более продуктивное применение. Именно поэтому переход Opera на WebKit вызвал у веб-разработчиков скорее облегчение, чем печаль.
И вдруг — такая новость. У WebKit после появления Blink остаётся лишь один крупный пользователь — Apple. В результате распространённость WebKit оказывается ограничена количеством пользователей OS X и iOS.
Уверения Google о том, что в краткосрочной перспективе веб-разработчикам не о чем волноваться, успокаивают не всех. Если отказ от участия в разработке WebKit — очередной этап затянувшейся войны с Apple, и от той, и от другой компании не стоит ждать ничего хорошего.
Такие страхи можно понять, но их обоснованность вызывает сомнения. Даже если предположить, что Blink затеян с самыми вредительскими целями (а это вряд ли), прежде чем его влияние станет ощутимым, пройдёт немало времени.
Для начала разберёмся, чем в Google объясняют необходимость Blink. Согласно официальному посту в блоге Google, разработчики Chrome устали бороться с архитектурными отличиями WebKit.
Поддержка мультипроцессности в Chrome была реализована не в WebKit, а в Chromium. Когда в WebKit появилась альтернативная реализация мультипроцессности, в Google продолжили использовать собственный код. Это существенно усложнило интеграцию WebKit и Chromium: всякий раз после релиза новой версии движка программистам Google приходится переделывать его под себя.
Первые версии Blink, судя по всему, будут представлять собой WebKit, раз и навсегда избавленный от функций, которые не нужны в Chromium. Внесённые изменения упростят разработку браузера, но не повлияют на то, как он отображает страницы. С точки зрения пользователей и веб-разработчиков Blink не будет отличаться от WebKit, во всяком случае поначалу.
Даже если затем в Blink появятся нестандартные функции, это не изменит ровным счётом ничего. В Chrome всегда хватало нестандартных или экспериментальных возможностей, делающих его не полностью совместимым с другими браузерами на основе WebKit. Их реализация может переместиться из Chromium в Blink, но это заметят только те, кто копается в коде браузера.
Куда интереснее, что произойдёт на мобильных устройствах, где доля WebKit стремится к ста процентам. Всё зависит от скорости распространения мобильной версии Blink, которая вряд ли будет быстрой. В отличие от Chrome для персональных компьютеров, мобильные браузеры не обновляются автоматически, что значительно замедляет процесс.
Даже если Chrome или другой браузер, основанный на Blink, встроят в следующую версию Android, его популярность будет расти медленно. Доле Android 4 на андроидных устройствах потребовалось два года, чтобы добраться до 50 процентов, и вряд ли Android 5 распространится быстрее.
Дело осложняется тем, что мобильный Chrome, где появление Blink следует ожидать в первую очередь, почти никто не использует. На каждом втором андроидном смартфоне до сих пор используются доисторические версии платформы, на которые этот браузер нельзя установить. Из-за этого он отстаёт не только от стандартного Android Browser, но даже от Dolphin.
Если не случится ничего непредвиденного, то в ближайшие годы мобильный Blink останется аутсайдером, вынужденным тщательно копировать особенности обычного WebKit, на который рассчитаны почти все мобильные сайты. В лучшем для Google случае монокультура мобильного WebKit когда-нибудь сменится мирным сосуществованием двух очень похожих движков.
Google не сможет диктовать свои условия до тех пор, пока доля всех прочих движков не упадёт ниже 10 процентов. В обозримом будущем — скажем, в течение четырёх-пяти лет — ничего подобного не случится, а веб-разработчики продолжат ориентироваться на те возможности, которые более или менее одинаково реализованы во всех популярных браузерах.
О более отдалённом будущем беспокоиться нет смысла. Пять лет назад не было ни одного смартфона, основанного на Android, а iPhone не поддерживал приложения. Пять лет — это срок, которого достаточно для того, чтобы изменилось вообще всё, с Blink или без.