Что означает старая версия браузера
Что такое «браузер устарел» и для чего нужен интернет-обозреватель?
Здравствуйте, друзья. Сегодняшний обзор будет посвящен на первый взгляд банальной теме — значению слова, которое у всех на слуху. И которое казалось бы знает каждый, даже школьник. И это так. И не так. Многие компьютерные «словечки» пришли к нам из английского языка — так уж исторически сложилось. И когда консультируешь человека по телефону (мне часто приходится это делать) прямо чувствуешь, как услышав такой незнакомый термин, человек этот впадает в ступор. Ничего в этом плохого нет — не у всех есть
время и желание вникать в технические тонкости того или иного вопроса. А работа не ждет — срочно нужно регистрироваться в личных кабинетах на госуслугах, банках, почтовых аккаунтах. В такие моменты трудно бывает не согласиться с сатириком М. Задорновым, который всегда призывал «русифицировать» все иноземные словечки. Итак..
Браузер — это русское звучание от английского существительного Browse, которое в переводе может означать «просматривать»,» обзор», «обозревать», «навигация». Соответственно, «browser«, это навигатор, который просматривает, обозревает нечто нужное ему.
Что такое «браузер» простыми словами?
Когда речь заходит о компьютерных и интернет технологиях здесь имеются ввиду компьютерные программы, предназначенные для просмотра того или иного содержимого на вашем ноутбуке, планшете или в Интернете. Когда мы просматриваем файлы на компьютере, мы используем один из обозревателей — «Проводник». В Windows он называется Explorer (точнный перевод «исследователь»):
Все сделано таким образом, чтобы этим просмотрщиком файлов и папок удобно было пользоваться; можно создавать, редактировать, удалять файлы, папки на нужных дисках и это все уже настолько привычно, что в лишних пояснениях не нуждается. В Windows 10 «Проводник» заранее выдвинут на панель задач, чтобы его удобнее было вызывать:
Другой разновидностью обзора являются интернет- обозреватели, коих сегодня пользователям предлагается наверное больше десятка. Первый web-обозреватель был создан в далеком уже 1990 году и назывался World Wide Web. Аббревиатура, с которой начинается адрес любого сайта (www) — это стандарты, заложенные еще в World Wide Web.
Настойка «браузер по умолчанию в Windows 10», для чего она нужна?
Среди интернет-обозревателей сегодня на рынке широкий выбор. Разработчики стараются не отставать от последних веяний и развивают свои продукты в ногу со временем. Самые известные и популярные программы у нас — это Google Chrom, Mozilla, Opera, Safari. Отечественная поисковая система «Яндекс» давно и вполне успешно продвигает свой «Яндекс-браузер«.
Ну да ладно. Из всего этого разнообразия каждый пользователь уже давно выбрал для себя комфортный браузер. Многие любят Хром. Я люблю Яндекс. И Windows 10 (как операционная система мирового уровня) предлагает своим пользователям сделать мягкие настройки. Продвигая свой Edge, они сделали настройки таким образом, что web-страницы
открывает именно он. И быстрее всего по тестам на «десятке» работает Edge. Но,если мы не хотим привыкать к новому, можно взять и изменить настройки под свой любимый обозреватель. Сделать это очень просто. Сначала на кнопке «Пуск» кнопкой мыши вызываем «Параметры»:
Выбираем «Приложения». » Десятка» устанавливается так же и на многих мобильных устройствах, и конкурирует с Android, в котором нет «Программ», но есть «Приложения»
Нас сегодня интересует настройка «Приложения по умолчанию». То есть настройки программ, которые сделаны «на заводе». Сейчас научимся их изменять.
Мы видим в списке несколько других программ — для чтения электронной почты, просмотра видео и фото, программа прокладки маршрутов. Разработчки и здесь постарались создать фирменные продукты и объединить их в одну систему. Но пока еще оставляют возможность использовать сторонние любимые программы. Нажимаем на «Вэб-браузер»:
И выбираем из списка нужный. Такие же настройки можно сделать для остальных предпочитаемых программ, а в случае чего опять сбросить на заводские, нажав «Сбросить».
Что такое браузер в телефоне и как им пользоваться?
На современных смартфонах обозреватели идентичны тем же, что и на компьютере. С той лишь разницей, что они заточены на мобильность. Все сделано для удобства пользования при минимуме настроек. Если Вы привыкли пользоваться к примеру Яндексом, то и на смартфоне можно легко его установить и использовать. Все что Вам нужно — это настроенный аккаунт Google на телефоне и выход в интернет. Заходим в Play Market, набираем в строке нужный браузер:
Затем устанавливаем, нажав на кнопку «Установить» и открываем:
Обозреватель выглядит привычно и на мобильном устройстве. «Настройки» заточены под мобильность, и голосовой поиск «Алиса» присутствует. Не надо кричать «ОК Гугл», можно просто нажать и говорить:
Для удобства можно настроить синхронизацию закладок, истории, — всего вашего контента с компьютером, на котором у вас стоит ваш основной Яндекс-браузер. В результате на обеих устройствах будут видны одинаково закладки, история просмотров и не нужно искать все заново. Идем в «Настройки»…
Вводим данные от аккаунта Яндекс (почта) либо заходим через кнопки социальных сетей:
После чего Ваш смартфон будет синхронизирован. В любой момент можно эту настройку выключить. Относительно новая настройка — менеджер паролей. Довольно интересная штука, но к ней надо привыкать. Сохраняет Ваши пароли и хранит их в зашифрованном виде на Яндексе. Может оказаться полезной, можно при желании пользоваться.
Почему устарел браузер? Что делаем в этом случае?
Часто пользователи говорят о сообщениях, которые время от времени появляются на устройствах, о том, что устарел браузер. Если вы увидели подобное сообщение у себя — не спешите. Нужно разобраться сначала, что к чему.
Современные интернет-обозреватели обновляются автоматически. Эти настройки задаются при установке программы. Никаких дополнительных действий не требуется, только если не сбиты настройки. В Windows 10 проверить их не составляет труда. Идем в «Планировщик заданий»:
Многие программы в «Десятке» обновляются через него. Можно посмотреть состояния запланированных заданий и их результаты. Я подчеркнул нужные:
Все задания по обновлению браузера должны быть активными. Для проверки или обновления можно запустить любое, сначала встав курсором на задание и нажать «Выполнить«:
Если все в порядке сообщений об ошибках не будет. Если ошибки появляются, то можно для начала переустановить браузер через «Панель управления». Если и это не помогло — надо лечить компьютер от вирусов и чистить от ненужных программ. Удачи Вам, и всего хорошего!
Что означает ваш браузер устарел
Если вам приходит уведомление “Ваш браузер устарел”, “Вы используете устаревший браузер” или что-то еще в этом роде, при этом рядом будет информация о том, что требуется обязательное обновление и рядом кнопка “обновить”, будьте начеку.
Данное сообщение — один из способов мошенничества, который позволяет установить на ваше устройство вредоносное программное обеспечение, способное выкачивать с вашего счета деньги, получать вашу приватную информацию или загромоздить ПК навязчивой рекламой, с которой злоумышленник планирует получать доходы. Поэтому нажимать на кнопку “Обновить” нельзя. Если вы действительно считаете, что браузер может быть устаревшим, достаточно зайти в настройки и обновить версию своего браузера.
Обновить браузер через настройки можно следующим образом:
Подробные инструкции по обновлению браузеров читайте в нашем руководстве: Как обновить браузер?
В случае, если всё же попались на данное мошенничество, необходимо попробовать самостоятельно удалить установленное программное обеспечение или сделать это используя популярные антивирусные программы.
Как избавиться от надписи «ваш браузер устарел»?
Для начала попробуйте нажать на появляющуюся надпись с информацией «Ваш браузер устарел» и нажмите на квадратик в правом верхнем углу. Поле с информацией должно закрыться. До тех пор, пока Вы не обновите куки, эта надпись появляться больше не будет. Но если Вы очистите куки, то скорее всего она вернется. Если не удалось сделать таким способом, то можно обратиться в службу технической поддержки.
Не обновляйте браузер самостоятельно, особенно, если Вас просят прислать смс.
Это один из самых распространенных видов мошенничества на сегодняшний день. Здесь есть две опасности: если пришлете смс, то лишитесь нескольких сотен рублей со счета мобильного телефона или подцепите вирус, который может разрушить компьютер.
Поэтому от этой надписи лучше избавиться. Для этого запустите диспетчер задач одновременно нажав «ctrl», «alt», «delete». Выбираете в всплывшем окне программу, которая запускает эту надпись. Нажмите «Снять задачу».
После этого нехитрого действия надпись должна перестать Вас беспокоить.
Уведомление о том, что браузер устарел
Они уходят. Ещё вчера мы были вынуждены прикручивать очередной костыль для IE6/IE7, а сейчас в этом уже нет необходимости. В СНГ у IE6 сегодня всего 0.5% трафика, у IE7 — 1.8%. Они действительно уходят. Думаю, большинство верстальщиков давно уже не добивается попиксельного соответствия макету, а кто-то даже не проверяет на работоспособность сайтов в столь старых браузерах. В таком случае не будет лишним предупредить пользователя, что сайт может работать неправильно, и предложить обновиться. Предлагаю готовый комплект из панельки предупреждения и страницы с предложением выбрать новый браузер.
Вы можете использовать его как есть, или же исправить под свои нужды. Надеюсь, вы в любом случае сэкономите немного времени.
Как использовать?
Вы можете просто вставить эту строчку сразу после открывающего тега или в секции :
Из-за условного комментария этот скрипт будет загружаться только в IE9 и младше. При желании можете понизить планку до IE8 или IE7, исправив 9 на 8 или 7 соответственно. По этому адресу скрипт будет доступен постоянно, поскольку в таком виде он используется в phpBBex. Но если вас не устраивает подобная зависимость, вы можете скачать архив с исходными файлами, на основе которых вы сможете сделать свою версию.
Как это выглядит?
Пользователи устаревших версий IE увидят стилизованное под IE6 уведомление:
При клике по нему пользователь увидит страницу выбора нового браузера:
Здесь у многих хабравчан должно возникнуть ощущение «я уже где-то это видел». Действительно, это переработанная страница выбора браузера, которую кто-то в 2009 году уже публиковал на Хабре (к сожалению, оригинальный пост не нашёл).
А что насчёт IE8?
На IE8 приходится 5.1% трафика — всё ещё достаточно много, чтобы игнорировать существование такого браузера. Но доля его стремительно падает. Уже не за горами тот самый момент…
А как же старые версии других браузеров?
Как правило, проблемы «значительной доли» устаревших версий не касаются альтернативных браузеров — старые Firefox, Chrome и Opera практически полностью самоустраняются в течение двух-трёх лет после выхода новых версий. Firefox 3.6 был кандидатом на «долгожителя», поскольку многие любители Firefox холодно отнеслись к новому интерфейсу и плотному графику релизов любимого браузера, сознательно оставаясь на старой версии. Прошло немногим больше года после выхода Firefox 4, и сейчас у Firefox 3.6 всего 2.3%. Его доля падает быстрее, чем доли устаревших версий IE.
Поддержка старых браузеров: каким образом и как долго
Дата публикации: 2018-03-01
От автора: спасибо, Господи, за то, что веб-браузеры постоянно обновляются. В течение стольких лет нам приходилось полагаться на пользователей, чтобы приложить усилия для загрузки новых версий по мере их выпуска. Но теперь даже Microsoft’s Edge присоединились к постоянному обновлению.
Несомненно, цифры не самые высокие, когда дело касается IE. Но они все же достаточно высоки, что нужно учитывать при создании нового веб-сайта. Вопрос в том, как мы продолжаем поддерживать старые браузеры при использовании новых функций? И, как далеко мы должны зайти в этом?
Застрял в прошлом
В идеальном мире дизайнеры хотели бы видеть, как Internet Explorer просто останется в истории. Похоже, что его кончина еще не скоро. Хотя более дешевые ПК и простое использование мобильного Интернета, указывают на то, что IE в конечном счёте уйдёт с доски. По крайней мере, это касается потребителя.
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
Корпорации по-прежнему используют более старые версии Windows, а это значит, что используется и IE. Edge доступен только для Windows 10. Поэтому, если крупные компании будут пользоваться Windows 7 или 8, IE останется выбором по умолчанию. Конечно, могут использоваться Chrome и Firefox, но это не обязательно означает, что пользователям в этих корпорациях разрешено устанавливать их.
Кое-кто опережает IE. Последняя версия Safari от Apple не будет работать на некоторых старых компьютерах Mac или iOS. Казалось бы, эффект здесь будет действовать на мобильный дизайн, так как есть еще несколько старых моделей iPhone. Safari является вторым наиболее широко используемым мобильным браузером.
Принимая это во внимание, нам нужно начать серьезно относиться к старым браузерам. Однако это не означает, что мы должны смущаться и избегать использования последних обновлённых функций.
Использование новейшего и крутейшего — с фолбэк поддержкой
Итак, как мы можем внедрять новые функции, сохраняя при этом проекты в старых браузерах? Когда дело доходит до CSS, использование вспомогательных методов может быть огромной помощью. В общем случае резерв — это код, который позволит устаревшему браузеру использовать приемлемую альтернативу тому, чего мы пытаемся достичь.
Чем дальше вы идете в плане предоставления альтернативы, тем сложнее её получить. Но по мере тестирования различных версий браузера и устройства, вы можете проворачивать хитрости.
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
Самое замечательное в том, что перед загрузкой скрипта можно выбрать, какие функции вы хотите найти. Например, вы можете выбрать такие функции, как canvas, HTML5 Audio / Video или даже emoji. Это позволяет сделать вещи максимально возможными, обеспечивая большую помощь в обеспечении обратной совместимости.
Насколько сильно может быть устаревшим браузер?
Мы знаем, что мы можем поддерживать устаревшие браузеры. Но как далеко мы можем зайти? Если вы спросите 100 разных дизайнеров, то получите 100 разных ответов. Это потому, что на самом деле не существует конкретного правила об обратной совместимости.
Лично я считаю, что часть уравнения должна быть о функциях, которые вы используете. Такие функции, как Flexbox или CSS Grid, которые влияют на макет, имеют жизненно важное значение для удобства использования веб-сайта. Поэтому важно предоставить какой-то резерв для старых систем. Такие вещи, как макет и навигация, следует рассматривать как «слишком крутые, чтобы потерпеть неудачу».
Когда дело доходит до предметов, которые больше подходят для эстетики, чем для функциональности, их часто можно оставить как есть. Если вы используете свойства CSS3, такие как тени и закругленные углы, вероятно, не стоит тратить время на предоставление альтернатив. Сайт должен быть таким же удобным для использования с ними или без них.
Если вы надеетесь выяснить, какая версия браузера должна служить точкой отсчёта, имеет смысл ссылаться на упомянутые выше номера использования. И если у вас есть данные этого типа для сайта, над которым вы работаете, еще лучше. Итак, если вы знаете, что на вашем сайте все еще есть посетители, которые используют IE8, то стоит убедиться, что они могут получить доступ к контенту.
Что касается моей собственной подпрограммы, то для IE8 она такая же, как я тестирую десктопные браузеры. Также я проверяю Safari 6 вместе со случайной версией Chrome и Firefox. На мобильном телефоне я обычно обращаюсь к устройствам Android 4.x и iOS 7. Конечно, ваши потребности и предпочтения могут отличаться.
Эволюция продолжается …
Вероятно, не удивительно, что старые браузеры все еще используются. Веб-дизайнеры уже много лет пробивают себе путь через эту проблему. Но ситуация намного лучше, чем в прошлом. Любой, кто имел дело с IE6, может это подтвердить.
Со временем мы увидим, как старые настольные и переносные компьютеры отправляются в корзину. И даже корпоративным пользователям придется в конечном итоге всё обновить. Поскольку современные браузеры постоянно обновляются, новые системы должны идти в ногу с развитием веб-дизайна.
Похоже, что более интересной задачей будет поддержка старых мобильных устройств. Хотя мы видим пользователей в непрерывном цикле обновления во многих областях мира, некоторые из них по-прежнему будут использовать устаревшее оборудование и программное обеспечение. Поэтому, возможно, наш резервный фокус будет больше двигаться к маленькому экрану.
Независимо от всего этого, основное внимание должно быть сосредоточено на том, чтобы контент был доступен как можно большему числу людей.
Автор: Eric Karkovack
Редакция: Команда webformyself.
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
Верстка-Мастер. Полное руководство
Овладейте современной адаптивной версткой с нуля
Как стать свободным от «цепей» старых браузеров
Люди не готовы отказываться от старых друзей, старых традиций и старых-добрых предпочтений. А еще некоторые из них привыкли к устаревшим версиям браузеров, а современное ПО устанавливать отказываются. О том, что делать, если вы стали заложником старых браузеров, рассказал в своем докладе на конференции «Frontend Conf» руководитель направления разработки ДомКлик Денис Красновский.
Знакомьтесь: это Slowking, Slowpoke, Slowbro и Slow web.
Именно так выглядит ваше приложение, пока пользователь пытается его загрузить. То, как долго он будет смотреть на эту белую простыню, зависит трех вещей:
Хочу условиться о том, что под приложением в этой статье всегда имеется в виду Web, то есть неважно – это просто лэндинг или Rich JavaScript Application.
Представим банальную ситуацию: у нас гипотетический онлайн-кинотеатр, и есть конкуренты, опять же гипотетические. Важно, чтобы решив посмотреть «Игру престолов», потенциальные зрители в поиске нашли первым именно наш кинотеатр, и кликнули на него. Но и это только половина победы.
Проблема SEO заключается в том, что если вас нет на первой странице выдачи, скорее всего, в интернете вас не существует вовсе. Потому что пользователи не ходят дальше первой страницы. Более того, первые три варианта обычно закрывают все потребности. К тем приложениям, которые находятся в первых рядах первой страницы, люди подсознательно проявляют доверие, ведь «Google фигни не посоветует».
SEO – это первый шаг, второй – впечатления пользователей.
User experience
Даже если вы находитесь на хорошем месте в выдаче поисковика — это еще не все. Нужно поработать над user experience. Именно в этот момент белый экран, особенно если он грузится довольно долго, начинает напрягать. Долгая загрузка связана, скорее всего, с большим количеством статики. Под статикой подразумеваются js, css, svg, png — в общем, все, что мы собираем для нашего приложения.
Помимо того, что мы заставляем пользователя выкачивать очень большой объем данных, мы перегреваем телефоны и разряжаем их батареи. Может быть, во время серфинга по сети на своем мобильном, вы замечали, что он очень сильно разогревается, руки потеют, а экран весь заляпывается. Если дошло до этого, приложением пользоваться уже не хочется.
Существует метрика Retention, в которой можно увидеть количество пользователей, которое вы смогли удержать после того, как они воспользовались вашим приложением. Например, я посмотрел первую серию «Игры престолов», и у меня негативный опыт: все грузится слишком долго, постоянно появляются какие-то проблемы. Скорее всего, я уйду к конкурентам. Возможно, именно они предоставят мне то, что я не получил с первым результатом в выдаче.
Третий шаг для нас, как для инженеров, тоже очень важный: речь идет о качестве продукта.
Все мы привыкли пользоваться stylelint, ESLint, которые проверяют наши js и css. Но почему бы нам не взять за основу Lighthouse?
Sonar, ESLint, Stylelint проверяют наш код на наличие ошибок, а мы смотрим, что получится в итоге, с точки зрения конечного пользователя. Lighthouse расскажет, где мы ошиблись и предложит варианты для оптимизации, чтобы улучшить наши показатели среди всех других приложений и сайтов.
Я хочу рассказать о том, как стать свободным от «цепей» старых браузеров. Давайте рассмотрим историю о взлетах и падениях. Все персонажи вымышлены, все совпадения — случайны.
This is how we do
Как-то раз ко мне обратились с предложением: «Давайте вы сделаете офигенное приложение: быстро, качественно, а еще у него должен быть хороший перфоманс». Нужно было делать Single Page Application, что подразумевало борьбу за прорисовку.
Для себя мы определили паттерны, по которым работать:
Вес css + js, без gzip
Используя вышеописанные паттерны, мы сделали приложение, богатое на функциональность и js.
Вот те зависимости, с которыми мы решились работать:
Этот момент показателен. Если мы заходим на страницу с 8 КБ, зачем тащить туда все остальное? Дайте эти 8 КБ пользователю, и пусть у него все рисуется.
Диагностика
Мы сделали приложение, оно работает. Как проверить перфоманс?
Браузеры кричат, как в фильме: «Somebody, please, get this browser a polyfill!».
Нас просили поддержать не только IE, но и Chrome v35 и Safari v10. Казалось бы, в чем проблема? Поддержали, добавили пару строчек кода — и все хорошо! Но дело в том, что мы уже дали пользователю почувствовать, что приложение летает. Это как будто вы посадили в ресторане клиента за столик у окошка на 86 этаже, и у него дух захватило от открывшегося перед ним вида. А через пять минут подошли к нему и предложили пересесть к туалету. Мы не хотели допустить такого эффекта, поэтому начали искать варианты работы со старыми браузерами.
Варианты работы со старыми браузерами
Рецепт
package.json
Во всем package.json нас сейчас интересуют три строчки:
Первые две строки — инструкция к сборке. Ключевой особенностью является указатель переменной окружения TARGET=old и TARGET=modern. Эту переменную мы будем использовать далее.
Важный нюанс: на третьей строчке мы сначала должны почистить папку, в которую все складываем. Во-первых, это просто хороший тон. А во-вторых, если не чистить папку, в которую складываете результаты билда, с большой долей вероятности на прод уедет что-то не то.
Еще один важный нюанс, о котором иногда забывают: && — это последовательное выполнение, а & — параллельное выполнение. Нам не нужно ждать, пока у нас билдится modern билд, мы запускаем их параллельно.
target.js
Нам нужно написать совсем немного скриптов.
Что здесь происходит? Мы преследуем единственную цель: собрать статику с хорошими браузерами в отдельную папку, а все остальные, кроме «мертвых» (больше 1%) — в другую папку. Это своего рода сервис. Мы объявляем полифилы, которые нам понадобятся. Переменную окружения используем для того, чтобы вернуть отсюда именно тот конфиг, который нужен Webpack и Babel.
webpack.prod.js
Все, что нам нужно сделать в Webpack, это прокинуть полифилы:
Потом перейдем в Babel.config.js:
Babel преобразует наш офигенный код в более старый, который не нравится нам, но нравится браузерам. При работе с Babel и при поддержке старых браузеров, нам необходим babel-polyfill.
Это мощная машина, которая много весит. В этот момент мы тоже указываем таргеты.
Babel-polyfill используется с параметром useBuiltIns с флагами:
Итого, из исходных 294 КБ они превращаются в 384 КБ кода.
Я выбираю другой вариант.
Путем нехитрых манипуляций мы получили две сборки:
Я упоминаю Internet Explorer, поскольку для меня он является олицетворением старых браузеров.
Это разница:
69 KB – годная тема.
Во фронтенде — по крайней мере у нас — принято биться за каждый килобайт.
Поэтому разница, которую мы получили между двумя версиями, важна. Но эти цифры – процент от наших частных вычислений. Если ваш проект намного больше, у него больше зависимостей, естественно, у вас и div будет больше.
У меня лапки
Иногда в браузере можно увидеть ‘last 2 versions’. Это означает, что вы решили поддерживать две версии всех браузеров, даже мертвых.
Добавьте useBuiltIns: ‘entry’, и разница между хорошим билдом и том, о котором мы сейчас говорим, будет составлять:
117 KB.
И не нужно забывать о том, что эти цифры для разных случаев будут разными.
nginx split
Вишенка на торте хайпа, о которой я говорил.
Мы находимся в nginx и будем использовать директиву map, локальную переменную http_user_agent. Кроме того, объявили переменную template. В нее запишем название индексового файла, который будем отдавать пользователю.
Важный момент: мы получаем user_agent на regex. И если user_agent с версией Chrome от 0 до 74, то мы отдаем old индекс. Для всех остальных современных браузеров отдаем modern-индекс.
listen 5050 означает то, что при запуске nginx, вы зайдете на local host 5050, и он начнет следовать инструкциям, которые вы написали, и раздавать то, что вы хотите. В данном случае (строчка root) мы говорим, что по такому-то пути на компьютере рнаходится папка dist (это папка в проекте), и туда нужно отдатьпеременную template. Это либо old индекс, либо modern индекс.
Теперь смотрим, что произошло:
Chrome v74
Про v74 мы условно сказали, что это старый Chrome. Здесь есть строчка, которая заматчилась — значит, все работает.
Chrome Canary v76
Работает надежно, как швейцарские часы. Но фронтенд в целом надежен как швейцарские часы (в отличие от бэкенда).
Как выглядит реальный файл?
Real world nginx map
Он выглядит следующим образом:
В данном случае мы уже объявили переменную. Для чего мы это сделали и почему не объявили ее выше, что казалось бы логичным ходом? В nginx нельзя объявить переменную выше, чем скоуп сервер. Интересно, что нельзя сделать директиву map на скоуп сервер. Поэтому код выглядит немного странновато, но он работает.
Для чего мы написали здесь столько переменных? Если вы какой-то причине решите переименовать файлик и допустите ошибку, nginx не будет на это ругаться. Однако если здесь будет не переменная, пользователям в разбросе Chrome 0-9 будет отдаваться не то, что они хотят. И вы, как человек, у которого есть самая последняя топовая машина и самый последний топовый браузер, никогда об этом не узнаете. Насколько быстро всплывет эта ошибка, неизвестно. Почему это происходит большинство разработчиков так и не поймут. Поэтому в данном случае лучше делать все через переменные.
Наверное, вы знаете, что есть сервисы Polyfill.io, и существует вариант проверять на клиенте, работает ли тот или иной метод, и, в зависимости от полученных данных, собирать статику. Скажу сразу: этот вариант рассматривать не стоит. Почему?
Вы объявляете Polyfill.io render-blocking скриптом, потому что не можете загружать свои скрипты дальше, ведь иначе JavaScript не станет работать. Поэтому мы сначала скачиваем html, видим Polyfill.io, идем в него, и он уже решает, что нам нужно. При таком подходе о перформансе можно забыть.
По той же причине не работает проверка, есть ли метод. Вы просто создаете дополнительные round-trip’ы, которые замедляют прорисовку.
Лучше всего пойти легким путем, о котором я рассказал. У человека, который знает Webpack и Babel, создать сплит между старым и новым браузером получится за два-три часа. А если он с ними не знаком и времени потребуется больше, это все равно стоит того.
Как говорил Альтрон:
«Я покажу вам нечто прекрасное ( у нас это web, тонущий в мегабайтах JavaScript).
Вы хотите перформанс, но не готовы к эволюции, а я свободен ото всех цепей».