Фацебоок је објавио изворни код Хермес ЈаваСцрипт мотора

Хермес

Фацебоок је отворио изворни код за лагани Хермес ЈаваСцрипт мотор, оптимизовано за покретање апликација заснованих на Реацт Нативе фрамеворк-у на Андроид платформи.

Инжењер софтвера Фацебоок Марц Хоровитз је открио нови ЈаваСцрипт мотор на конференцији Цхаин Реацт 2019 у Портланду, Орегон. Хермес је нова алатка за програмере која се фокусира на побољшање перформанси покретања апликација на исти начин на који то Фацебоок већ чини за своје апликације и стварање апликација ефикаснијим на почетним паметним телефонима.

О Хермесу

Подршка за Хермес уграђена је у Реацт Нативе од данашње верзије 0.60.2. Пројекат је препознат по решавању проблема са дугим временима покретања изворних ЈаваСцрипт апликација и значајном потрошњом ресурса. Код је написан на Ц ++ и дистрибуиран под МИТ лиценцом.

Од предности коришћења Хермес-а је смањење времена почетка апликације, смањење потрошње меморије и смањење величине апликације.

Убрзање апликација лансирање постиже се употребом прекомпилације у бајт коду компактан и ефикасан у фази састављања.

Да би се апликација директно покренула, користи се виртуелна машина са СемиСпаце сакупљачем смећа развијеним као део пројекта. Код В8 најдужи су кораци за рашчлањивање изворног кода и његово тренутно компајлирање.

Хермесов механизам води ове фазе до фазе компајлације и омогућава испоруку апликација у облику оптимизованог бајт кода.

Обрада ЈаваСцрипт-а подељена је у неколико фаза. У почетку се изворни код рашчлањује и генерише се посредни приказ кода (Хермес ИР), заснован на ССА представљању (Статиц Уникуе Ассигнмент).

Поред тога, средња репрезентација се обрађује у оптимизатору, који користи проактивне технике статичке оптимизације за претварање примарног средњег кода у ефикаснију средњу репрезентацију, уз истовремено очување семантике оригиналног програма.

Коначно, у последњој фази се генерише бајт код за регистровану виртуелну машину.

У демонстрацији, Марц Хоровитз је показао да Реацт Нативе апликација са Хермесом био је потпуно учитан око две секунде брже него иста апликација учитана без Хермеса.

Марц Хоровитз се побринуо да Хермес такође смањи величину АПК-а до средине Реацт Нативе меморисане апликације од 41 МБ и елиминисала је четвртину коришћења меморије апликације.

Другим речима, са Хермесом програмери могу натерати кориснике да брже комуницирају са апликацијом са мање препрека, као што су споро време преузимања и ограничења проузрокована вишеструким апликацијама које деле ограничене ресурсе меморије, као што су: Посебно на нивоима уноса телефона.

Мотор подржава део ЕЦМАСцрипт 2015 ЈаваСцрипт стандарда (његова потпуна подршка је крајњи циљ) и компатибилан је са већином постојећих Реацт Нативе апликација. У Хермесу је одлучено да се не подржава локално ливење евал (), „са“ изразима, рефлексијама (Рефлецт и Проки), Интл АПИ АПИ и неким заставицама у РегЕкп-у.

Да бисте омогућили Хермес у апликацији Реацт Нативе, једноставно додајте опцију „енаблеХермес: труе“ у пројекат. Такође је могуће компајлирати Хермес у режиму ЦЛИ интерфејса, што вам омогућава да извршавате произвољне ЈаваСцрипт датотеке из командне линије.

У исто време Фацебоок не планира да прилагођава Хермес за Ноде.јс и друга решења, фокусирајући се само на мобилне апликације (компајлирање АОТ уместо ЈИТ-а је оптималније у контексту мобилних апликација заснованих на Реацт Нативе-у).

Мицрософт је спровео прелиминарне тестове перформанси и показао да је када користи Хермес апликација Мицрософт Оффице за Андроид доступна за рад за 1.1 секунду.

Након лансирања и троши 21.5 МБ РАМ-а, док се користи В8 мотор, на покретање се троши 1.4 секунде, а потрошња меморије је 30 МБ.


Будите први који ће коментарисати

Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.