Гермес в стеке технологий? Facebook выпускает новый движок JavaScript: Hermes

JavaScript React Native
Гермес в стеке технологий? Facebook выпускает новый движок JavaScript: Hermes

предисловие

  • В настоящее время удобство работы пользователей является одним из важных показателей того, что пользователи могут использовать мобильное клиентское приложение в течение длительного времени, поэтому производительность мобильного клиентского приложения привлекла большое внимание.
  • Недавно вышел совершенно новый движок JavaScript: Hermes, который был выпущен Facebook на Chain React 2019 и использовался для повышения производительности в приложениях React Native, сегодня я дам полное представление.


    Схема

содержание

Схема

1. Введение

Новый движок JavaScript, анонсированный Facebook на Chain React 2019

Открытый исходный код и интегрированный для мобильных приложений React Native

Схема

2. Функция

2.1 Предыстория

  • Удобство работы пользователей является одним из важных показателей того, что пользователи могут использовать мобильное клиентское приложение в течение длительного времени, поэтому производительность мобильных клиентских приложений привлекла большое внимание.
  • Что касается приложений React Native, то такие проблемы с производительностью, как беглость, подвергались критике.

2.2 Вопрос

Основываясь на многостороннем анализе данных о производительности, Facebook обнаружил, что сам движок JavaScript является важным фактором, влияющим на производительность приложений React Native при запуске.

2.3 Решения

Создайте совершенно новый движок JavaScript для приложений React Native, чтобы повысить производительность мобильных клиентских приложений.

Специальное примечание: Гермес в основном предназначен для оптимизации производительности нативных приложений мобильной реакции и не применим к инфраструктуре для серверов, таких как браузеры и Node.js.


3. Повышение производительности

Для приложений React Native (на основе движка JavaScript) наиболее очевидные впечатления пользователей о производительности включают:

  • Доступное время для подачи заявки (TTI)
  • Размер загрузки установочного пакета (размер Android APK)
  • использование памяти

Согласно официальным данным по оптимизации производительности, предоставленным Facebook, следующим образом:


Схема

Из приведенных выше данных видно, что двигатель Hermes более явно улучшает производительность:

  • Hermes может удвоить эффективность использования времени, доступного приложению.
  • Под загружаемый размер установочного пакета Hermes может уменьшить размер на 50%
  • Что касается использования памяти, Hermes может сэкономить 30% используемой памяти.

4. Принцип конструкции

Чтобы повысить производительность приложений React Native, дизайн движка Hermes в основном начинается с двух аспектов: метод компиляции и стратегия сборки мусора.

4.1 Метод компиляции

А. Прекомпиляция байт-кода
Схема
б) без JIT-компиляции
Схема

4.2 Политика сбора мусора

Схема

5. Используйте функции

При фактическом использовании Hermes он имеет три преимущества: ленивая компиляция, хорошая совместимость и хороший опыт отладки, следующим образом:


Схема
  • Особое примечание. При использовании Hermes вам необходимо внести изменения в файл build.gradle и перекомпилировать его.
project.ext.react = [
  entryFile: "index.js",
  enableHermes: true
]

6. Резюме

  • В этой статье представлен всесторонний обзор нового движка JavaScript, анонсированного Facebook на Chain React 2019:Hermes
  • я буду продолжатьHermesЗнания в движке подробно объясняются, и заинтересованные студенты могут продолжать следить за моим блогом.Замечания развития Carson_ho

Пожалуйста, лайк! Потому что ваша поддержка - самая большая мотивация для моего письма!

Читать связанные статьи
Android-разработка: самое полное и понятное решение по адаптации экрана Android
Подробное объяснение механизма распределения событий Android: самое полное и понятное в истории
Разработка для Android: самое полное решение для отправки сообщений Android в истории
Android-разработка: самое полное и понятное подробное объяснение Webview
Android-разработка: введение в JSON и самый полный метод парсинга!
Четыре основных компонента Android: самый полный анализ в истории Сервиса
Четыре основных компонента Android: самый полный анализ в истории BroadcastReceiver


Добро пожаловать, чтобы следоватьCarson_HoКраткая книга!

Делитесь время от времени оAndroid-разработкагалантерейные товары, преследованиекороткий, плоский, быстрый,нонет недостатка в глубине.