Причины, по которым все веб-разработчики должны использовать Firefox

Причины, по которым все веб-разработчики должны использовать Firefox

Nuances of programming

Перевод статьи Ibrahim Nergiz: Calling all web developers: here’s why you should be using Firefox

Я не знаю, какого вы возраста, но как человек, который родился в конце 80-ых, я помню взлёты и падения Firefox.

Firefox был представлен как open source конкурент для Internet Explorer. Он был прекрасным, так как имел различные опции. Например, пользователи могли добавить в него дополнительные возможности с помощью различных расширений или изменить визуальную тему. Все это любили.

Однако, спустя пару лет в игру вступил ещё один участник. Назывался он, как вы должны были догадаться, Chrome. Chrome начал распространяться с ошеломляющей скоростью. Более того, Chrome использовали настолько много людей, что он стал самым ценным активом Google. Я уверен, что многие из вас пользуются им прямо сейчас, пока читают этот текст.

Но давайте вернёмся на минутку. Как разработчик, я понимаю, насколько сложно иногда удовлетворить интересы пользователей.

С разработкой все более сложных веб-технологий, приложений и вообще оборудования в целом, начали появляться проблемы с высокими затратами оперативной памяти и процессора.

Дэниз, из команды разработчиков JotForm, недавно заметил:

"У меня есть компьютер с последней конфигурацией Macbook Pro. Когда я работаю (с активными инструментами разработчика Chrome), то батарея садится очень быстро."

Если вы тоже разработчик, то должны были это заметить или услышать от кого-то их ваших знакомых.

Возможно, вы даже зашли дальше и подумывали о том, чтобы сменить браузер.

И здесь в дело вступает новый и улучшенный Firefox - Firefox Quantum.

В 2017, Quantum был запущен для пользователей Android, Linux, iOS, Mac и Windows. Спустя 10 лет после того, как Mozilla представили свою первую версию Firefox.

В то время, как Quantum имеет новый современный дизайн, говорят, что он загружает сайты в два раза быстрее, чем Firefox 6, а также использует на 30% меньше памяти, чем Chrome.

После 10 лет в разработке Mozilla нашли новые способы отличить свой браузер от конкурентов без потери производительности. Неплохое достижение.

Поэтому, чтобы получить максимальное преимущество от компьютерной производительности, 4 миллиона строк кода были переписаны с помощью таких передовых технологий как ServoRust и Quantum/Stylo.

И это окупилось.

По-моему мнению, Firefox Quantum имеет лучшую производительность по сравнению с другими браузерами.

И вот почему...

Новые технологии

WebAssembly

Запуск больших, красивых или сложных приложений онлайн - это мечта многих разработчиков. В дополнение к недавнему скачку технологий по обработке фото и видео, 3D редактирования игр, а также VR/AR, ожидания онлайн-пользователей значительно возросли.

Такие Javascript движки, как Google V8, Mozilla SpiderMonkey и Microsoft Chakra были разработаны как раз для того, чтобы достичь лучшей производительности для такого рода операций.

К концу 2017-ого года стало возможным запускать Unity и Unreal Engine проекты внутри Firefox. А теперь такой поддержкой занялись и другие крупные браузеры.

A-Frame and WebVR

Одной из самых больших недавних инноваций является Виртуальная Реальность, или VR. А с помощью мобильных устройств, браузеров и таких продуктов как Oculus Rift и HTC Vive прогресс не стоит на месте.

Mozilla сыграли большую роль в развитии WebVR, а также старательно работали над тем, чтобы дополнить её своим новым веб-браузером. Спасибо A-Frame (поддерживаемый Mozilla), что отличный фреймворк для работы с WebVR уже доступен для нас.

Project Common Voice

Apple Siri, Microsoft Cortana, Amazon Echo, и Google Home создали свою запатентованную технологию распознавания речи для своих продуктов.

И угадайте что? Mozilla запустили Common Voice - open source проект, цель которого сделать технологию распознавания речи доступной для каждого.

Каждый может поспособствовать развитию Common Voice прочтением предложения вслух и объяснив его значение машине. Вы также можете проверить обычные примеры распознавания голоса для того, чтобы проверить, на правильном ли пути эта технология.

Firefox Devtools

Читая обо всех тех изменениях, что я перечислил выше, вы вряд ли будете удивлены, когда я скажу, что для инструментов разработчика тоже был создан ряд улучшений. Одна из них - debugger.html. Преимущество его в том, что это open source проект, размещённый на GitHub, поэтому каждый может поспособствовать его развитию.

А теперь давайте рассмотрим по порядку каждую возможность debugger.html.

Общее - исследовать элемент

Смена темы

Новые инструменты разработчика сопровождаются тремя темами: светлая, тёмная и Firebug. Популярный инструмент Firebug всё ещё используется многими людьми, хотя его поддержка прекратилась.

Есть даже отдельный пост со сравнением используемых этими темами цветов.

CSS Grid

Одна из последних инноваций в CSS - это CSS Grid Layout. С новыми инструментами разработчика вы можете увидеть ваши 'display: grid'-элементы. Вы также можете включить или выключить такие возможности, как нумерация строк, названия областей или бесконечное растягивание строк.

Box Model

Свойства maring и padiing в элементах иногда могут стать запутанными. С новой 'box model'-структурой отображения элемента, вам будет намного проще увидеть и изменить занимаемое элементом место, в частности свойства margin, padding и border.

CSS-переменные

Ещё одна CSS-инновация - это переменные. Не смотря на то, что ещё не все браузеры поддерживают переменные, их использование без сомнений только возрастёт с течением времени. Как должно быть понятно из названия, вы можете привязывать значения к переменным. Хотите узнать, какое значение хранится в переменной? Просто наведите на неё мышь.

Добавить/убрать класс

Нажав кнопку .cls на правой стороне панели инструментов разработчика, вы можете легко добавить или убрать CSS-классы выбранного вами HTML-элемента.

Hover

Когда вы нажмёте расположенную возле .cls кнопку, то сможете легко протестировать поведение элемента при срабатывании hover-, active- и focus-состояний.

Font Family

Когда вы исследуете элемент, вы также можете просмотреть используемый им шрифт и где этот шрифт объявлен.

Анимации

Анимации - это отдельная популярная разработка. В моей статье ‘How to use CSS animations like a pro’ я написал короткое ознакомление с анимациями. Вы можете проиграть анимации медленнее или отследить как они двигаются.

XPath

Кто-нибудь из вас должен был слышать термин 'скрапинг данных' (метод извлечения данных из сети). Если вы хотите использовать скрапинг для извлечения какого-то контента из веб-страницы, вы можете легко обнаружить местоположение нужного вам элемента с помощью XPath. Вы можете увидеть то, что я имею в виду в гифке выше.

Консоль

Логи консоли

Когда мы переместимся в раздел консоли, вы можете легко исследовать элементы. Также, структура дерева делает выделение объектов куда проще, а также не даёт им исчезать из поля зрения.

Console.group

А вы знали, что вы можете сделать events более организованными и разборчивыми с помощью console.gruop() и groupCollapsed()?

Debugger

Точки остановки

Хорошие инструменты для дебаггинга Javascript незаменимы. С помощью точек остановки вы можете изучить ваш код более подробно.

Карты источников

SCSS, WebAssembly, TypeScript, Babel... эти JavaScript- или CSS-сборки становятся очень популярны. Однако в результате код, который отображается в браузере выглядит немного иначе, чем тот, который был написан изначально. Вы можете работать с источником оригинальных файлов с помощью карт источников.

Поиск функций среди всех проектов

Один из лучших способ найти свои ошибки - это иметь возможность для поиска среди многих файлов.

Редактор стилей

В этом редакторе вы видите всё, что вы написали для вашего CSS, вплоть до точек остановки.

Производительность

Для того, чтобы быть уверенным, что наша страница загружается быстро и плавно, особенно когда используется анимация, не стоит забыть про правило 60 fps. С помощью этого окна вы можете увидеть, как много времени каждый кадр требует на загрузку.

Мониторинг сети

CSS, JavaScript, картинки и многие другие ресурсы загружены в окне мониторинга сети. Здесь вы можете посмотреть, корректно ли отображается ваша страница в браузере.

Этот раздел используется преимущественно для настройки производительности. Вы можете просматривать статус ваших файлов, время на их загрузку и загружаются ли они успешно.

Хранилище

Мы используем cookies или локальное хранилище для хранения информации о наших пользователях, когда они посещают наш сайт.

Этот раздел даёт вам возможность для наблюдения, редактирования, добавления и удаления этой информации.

Подведение итога

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

Например, если вы хотите посмотреть презентацию Apple Keynote в сети, то вы сможете открыть эту страницу только с помощью Safari. А если вы захотите сменить iOS на Android, то вам придётся распрощаться с iMessage.

Но Mozilla Firefox не является частью этого запатентованного 'огороженного сада'. Поэтому сменить ваш браузер на Firefox куда проще, чем сделать что-то из примеров выше.

Да, я знаю, что вам всё ещё сложно это сделать. Вам нужно сменить привычки, ярлыки, расширения браузера и сохранённые пароли, но я обещаю, что оно того стоит.

Дайте Firefox шанс.

P.S.

У меня есть хорошие новости для тех, кто дочитал эту статью до конца. У нас есть возможность для отключения повсеместных всплывающих оповещений, которые мы уже устали получать на каждом сайте.

Статью перевёл Дмитрий Хирш

Report Page