Как стать автором
Обновить

Комментарии 20

Интересная статья, спасибо! Сразу вспоминается пара книг: «Реактивные веб-сайты» и «Разгони свой сайт».
RTT наше все. Сейчас быстрее вклеивать стили и скрипты внутрь, чем загружать отдельные файлы и надеяться найти их в кэше мобильного браузера.
Интересно, но как-будто обрывается на середине.
Кажется, что сейчас пойдет самое интересное, а тут… всё.
За переводом этой статьи я настолько углубился и заинтересовался данной темой, что планирую продолжить уже собственное исследование, возможно опубликую, если людям будет интересно.
кривая статья. очень много допущений.
очень умилило «за минимальную скорость мобильного интернета возьмем 1мбит» и выведение закона мура по версиям андроида без уточнения девайсов.

а самого главного ответа — насколько jquery медленнее vanilla js — нет, чисто «да у наших пользователей, наверное, хорошие устройства с хорошим интернетом, они спокойно загрузят лишние 30кб жса». И да, «средняя страница — 1.7 мб» — это смешно. тут хорошо бы взять медиану, причем именно страницдля мобильных, а не всех сайтов мира
Все же там написано: «средняя веб-страница весит более 1.7Мб», то есть просто обозначена некоторая граница. В заключительной части статьи упор делается на необходимость оптимизации сайта в целом. Несколько килобайт можно скинуть просто загрузив оптимизированное изображение, но почему то до сих пор существует много сайтов, которые даже этого не делают.
Субьективно (нужно реально будет поизучать, когда возникнет потребность — опубликую обязательно) — медиана средней мобильной страницы НЕ мобильного приложения укладывается в 150-250 кб на данный момент. Из них ассеты (подгружающееся парралельно содержимое: изображения, шрифты etc) занимают 100-150кб, и они не загружают основной поток загрузки содержимого.
На JS, html и css в среднем для мобильной (не адаптивной, а именно мобильной версии) по факту занимают 50-150 Кб.(сразу говорю, я говорю гзипнутые размеры, по факту это до 500 кб спокойно может быть).
Поэтому «средняя веб-страница весит более 1.7 МБ» в контексте мобильного jQuery — такое же лукавство, как и «на андроид 4.4 оно отрабатывает за столько-то секунд». Я могу для сравнения взять мой убитый Atrix 4g 2011 года выпуска — на нем для тестов сейчас Cyanogen 4.4 стоит, и Sony Z1 — на нем стоковый 4.4, и сравнить, за сколько тестовый скрипт загрузится и отработает. Уверен, разница будет в два раза минимум.
и про jquerymobile.com никто даже не вспомнил, которая работает на ajax-pages…
Не стоит забывать и про работу сайта после загрузки jQuery, а он ни скоростью ни потреблением памяти похвастаться не может. Описанные проблемы с перформансом решает jBone, если конечно вы готовы пойти на менее богатый API.

Еще могу добавить, что после перевода приложения с jQuery на jBone сократили время загрузки сайта, процессинг и потребление памяти в среднем в 2 раза. Не уверен, что дело только лишь в jBone, так как по пути переписали еще не мало всего, но результат радует. Уже давно думаю о полноценной статье об этом.
«В то время как Mobile Safari на iOS7 и Chrome на Android справились с этой задачей достойно. Стандартный браузер на Android показал очень плохие результаты.»
А в андроиде какой стандартный браузер если не Chrome?
Не могу сказать что на всех, но на некоторых версия android, установлен по дефолту «Android Browser», в статье речь идет о нем.
НЛО прилетело и опубликовало эту надпись здесь
> А в андроиде какой стандартный браузер если не Chrome
Вроде всю жизнь был «Интернет»? Хорошо хоть не «исследователь интернета»
За годы с момента написания статьи (судя по версиям андроида 2.2 и 4.0) все сильно изменилось. Теперь числа изменятся на десятичный порядок.
Из-за фрагментации у CDN-провайдеров шансы на использование кэш-памяти CDN являются низкими


— точка кипения, гы.
так поэтому и надо всем пользоваться cdnjs, не?
В оригинале:
A network with download speeds of 1Mbps can download 125KB in a second, which means that for every 1 Mbps your mobile network provides, you can download 4.36 jQuery’s/second.
В Вашем переводе:
Сеть со скоростью загрузки 1 Мбит может скачивать 125 Кб в секунду, это означает, что за одну секунду вы можете скачать jQuery 4.36 раза.
И так далее по тексту… поправьте единицы измерения (Б=байт, б=бит).
А что если взять конкретный нужный нам скрипт, который использует jQuery, слить всё в один файл, скормить это дело в Google Closure, сжать gzip-oм и положить на сайт?

Лет 5-6 назад, когда jQuery был уже толстым, а Google Closure ещё не родился, я делал простенькую обертку над скриптами, которая компилировала все скрипты на странице в один сжатый gz-файлик и отдавала браузеру один раз. Сервер контролировал кэш, соответственно нормальные браузеры этот скрипт загружали и компилировали только 1 раз. Для браузеров без поддержки gzip (сейчас такие поискать надо) отдавалась просто минимизированная версия скриптов.
НЛО прилетело и опубликовало эту надпись здесь
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.