Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju.

React Native 0.70 ir izlaista, un Hermes ir jaunais noklusējuma JavaScript dzinējs, kas tiek piegādāts kopā ar šo atjauninājumu. Lūk, ko sagaidīt no Hermes un dažām funkcijām, kas ietekmēs jūsu React Native lietojumprogrammas veiktspēju.

Kas ir Hermess?

Hermes ir atvērtā pirmkoda JavaScript dzinējs, kas optimizē veiktspēju operētājsistēmās iOS un Android lietojumprogramma tiek palaista, iepriekš kompilējot JavaScript kodu efektīvā baitkodā un samazinot lietojumprogrammu atmiņas lietojums.

Vecāku React vietējo versiju atjaunināšana, lai atbalstītu Hermes

React Native lietojumprogrammām, kas darbojas ar 0.70, pēc noklusējuma būs iespējots Hermes. Vecākām React Native lietojumprogrammām Hermes komplekts tiek piegādāts ar katru React Native versiju, sākot no versijas 0.60.4 Android versijām un versijas 0.64.0 operētājsistēmai iOS. Atbilstošās versijas novērš atkarības neatbilstības risku jūsu React Native lietojumprogrammā.

instagram viewer

Lai iespējotu Hermes šajās vecākajās React Native versijās, gan Android, gan iOS lietojumprogrammām ir jāpievieno noteikta konfigurācija.

Android ierīcē rediģējiet savu android/app/build.gradle fails:

projekts.ext.react = [
ieraksta fails: "index.js",
iespējot Hermes: taisnība// notīriet un pārbūvējiet, ja mainās
]

Operētājsistēmā iOS savā ierīcē veicat tālāk norādītās izmaiņas ios/Podfile:

use_react_native!(
:path => config[:reactNativePath],
:hermes_enabled => taisnība
)

Operētājsistēmā iOS pēc iestatījumu konfigurēšanas ir jāinstalē Hermes podi.

Lai instalētu pākstis, izpildiet šo komandu:

cd ios && pod instalēšana

Hermes iespējošana ar Expo

Varat arī izmantot Hermes dzinēju React Native lietojumprogrammām, kas izveidotas vai darbinātas, izmantojot Expo. Expo bibliotēka atbalsta Hermes no SDK versijas 42 operētājsistēmā Android un SDK versiju 43 operētājsistēmā iOS līdz pašreizējai versijai 0.70. Ir svarīgi atzīmēt, ka atsevišķas lietojumprogrammas nevar palaist Hermes, ja tās nav izveidotas, izmantojot Expo Application Services Build.

Lai React Native lietojumprogrammā iespējotu Hermes, rediģējiet savu app.json fails:

{
"ekspo": {
"jsEngine": "hermes"
}
}

Tagad jūsu lietojumprogrammai, kas izveidota, izmantojot Expo Application Services, būs iespējots Hermes kā JavaScript dzinējs.

Hermes veiktspējas optimizācija React vietējām lietotnēm

Lielākā daļa JavaScript dzinēju parsē visu JavaScript avota kodu, izmantojot JIT (Just in Time) kompilācijas sistēmu. JIT sistēma palēnina izpildi, jo ierīcei ir jāgaida, līdz tiks pabeigts viss kompilācijas process. Hermes izmanto priekšlaicīgas apkopošanas (AOT) pieeju, pārceļot lielāko daļu lieljaudas JavaScript dzinēja darba, lai izveidotu laiku.

Hermes galvenokārt ietekmē trīs lietojumprogrammu veiktspējas rādītājus: lietojumprogrammas TTI (Time to Interactive), bināro izmēru un atmiņas lietojumu.

Laiks interaktīvai

TTI ir laiks, kas nepieciešams lietotnei, lai ielādētu un atbalstītu lietotāja mijiedarbību, piemēram, ritināšanu vai rakstīšanu. Hermes uzlabo vidējo TTI React Native lietojumprogrammām, salīdzinot ar citiem JavaScript dzinējiem.

Šis TTI samazinājums ir tāpēc, ka Hermes nedarbina JIT kompilatoru.

Binārais izmērs

Binārais izmērs ir komplektā iekļautās React Native lietojumprogrammas lielums. Android lietojumprogrammas izmanto APK faila formāts, savukārt iOS lietotnēs tiek izmantots formāts, ko Apple izsauc IPA. Izmantojot Hermes, Android ierīcēs tiek ievērojami samazināts lietojumprogrammas lielums.

Atmiņas lietojums

Atmiņas lietojums ir vēl viens kritisks rādītājs, ko optimizēt lietojumprogrammās. Lietojumprogrammas lietošanas pieredze negatīvi ietekmētu, ja tā izmanto pārāk daudz atmiņas. Hermes ievieš atkritumu savācēja sistēmu, kas regulē atmiņas lietojumu pēc pieprasījuma, nodrošinot, ka lietojumprogramma darbības laikā izmanto tikai nepieciešamo atmiņas vietu.

Hermes piedāvā jaunu pieredzi React Native lietojumprogrammu atkļūdošanai, kas darbojas emulatorā, simulatorā vai fiziskā ierīcē, izmantojot Expo. Hermes atbalsta React Native lietojumprogrammu atkļūdošanu, izmantojot Chrome DevTools Inspector Protocol. To nevajadzētu jaukt ar tradicionālo JavaScript atkļūdošana, izmantojot pārlūkprogrammas konsoli.

Lai konfigurētu pārlūku Chrome Hermes lietojumprogrammu atkļūdošanai, veiciet šīs darbības.

  1. Dodieties uz chrome: // pārbaudīt pārlūkprogrammā Chrome.
  2. Noklikšķiniet uz Konfigurēt pogu.
  3. Ekrāna modālā ievadiet servera adresi metro apvienotājam, kurā darbojas jūsu React Native lietojumprogramma, un noklikšķiniet uz Gatavs.

Tagad varat atkļūdot savu React Native lietojumprogrammu, izmantojot Hermes mērķa pārbaudes saiti.

Kāpēc Hermes ir optimizēts tikai React Native

Hermes kā React Native JavaScript dzinēja optimālā veiktspēja daļēji ir saistīta ar tā izpildlaika vidi. Programmā React Native tiek apvienots viss JavaScript kods lietojumprogrammas vidē. Šī sistēma padara nosūtīšanas baitu kodu efektīvu.

Vēl viens faktors, kas jāņem vērā, ir JavaScript kompilācijas laikā paveiktā darba apjoms. Hermes pārvalda biežu lietotāju mijiedarbību, kas paredzēta mobilajām lietojumprogrammām, vienlaikus izvairoties no agresīvas baitkoda optimizācijas. JIT kompilatora JavaScript dzinējs neveiktu uzdevumus šādā veidā.