Почему iOS 4.3 в два раза медленнее запускает веб-приложения с главного экрана?

Согласно эксклюзивному отчету The Register, iOS замедляет работу веб-приложений, сохраненных и запускаемых с главного экрана. Издание выяснило, что такие веб-приложения с главного экрана работают «примерно в два-два с половиной раза медленнее» по сравнению с их запуском непосредственно из браузера Safari. Проблема была обнаружена в недавно выпущенном программном обеспечении iOS 4.3, которое обновило Safari быстрым JavaScript-движком под названием Nitro.

//

Издание отмечает, что движок Nitro не запускается для веб-приложений с главного экрана, в то время как офлайн-кэширование, асинхронный режим выполнения и другие возможности HTML5 также недоступны. Пытается ли Apple помешать разработке веб-приложений для iOS, чтобы продвигать нативные программы из App Store? Сложно сказать. Когда вышел первый iPhone, Apple предлагала разработчикам использовать общие веб-технологии. Когда спустя месяцы был выпущен первый официальный SDK, веб-приложения быстро отошли на второй план на устройствах iOS. С другой стороны, Safari Dev Center поощряет разработку iOS на основе веб-технологий, а Стив Джобс неоднократно подчеркивал поддержку Apple двух платформ: HTML5/CSS и курируемой платформы App Store.

И если бы Apple хотела ограничить работу веб-приложений, разве они не хотели бы замедлить их напрямую в Safari, а не только с главного экрана? Конечно, Apple имеет свои интересы в нативных приложениях из-за 30-процентной комиссии, которую они берут с продаж. Почти два года назад я утверждал, что веб — это конечный магазин приложений, и действительно, многие нативные приложения легко воспроизводятся с помощью HTML/CSS, особенно такие вещи, как новостные ридеры, клиенты социальных сетей и многое другое. Также важно, что веб-приложения работают на любом устройстве со стандартизированным браузером, в то время как их нативные аналоги привязывают вас к конкретной мобильной платформе.

С другой стороны, постоянство пользовательского опыта всегда было главным приоритетом Apple, а веб-приложения лишают их этого контроля, имитируя внешний вид и ощущение iOS с помощью жестко закодированных таблиц стилей. Это резко контрастирует с нативными приложениями, которые проходят через API, отвечающие за отображение самых актуальных элементов пользовательского интерфейса.