Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hermes Engineのチカラを その身で感ぜよう!
Search
Haochen Kotoi-Xie
January 27, 2024
Programming
0
160
Hermes Engineのチカラを その身で感ぜよう!
Hermes Engine が速いという話
Haochen Kotoi-Xie
January 27, 2024
Tweet
Share
More Decks by Haochen Kotoi-Xie
See All by Haochen Kotoi-Xie
社内アプリで Cloudflare D1を プロダクト運用してみた体験談(Tokyo)
haochenx
0
140
社内アプリで Cloudflare D1を プロダクト運用してみた体験談 @Cloudflare Meetup Nagoya
haochenx
0
79
Other Decks in Programming
See All in Programming
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
2
74k
ServerAction で Progressive Enhancement はどこまで頑張れるか? / progressive-enhancement-with-server-action
takefumiyoshii
6
510
WebGLで始める コンピュータグラフィックス入門
heller77
0
370
ペパボOpenTelemetry革命
pyama86
2
500
Powerfully Typed TypeScript
euxn23
3
1.3k
TypeScriptコードの漸進的改善 / Progressive Improvement of TypeScript Code
medley
1
420
An adventure of Happy Eyeballs
coe401_
1
140
TypeScriptから始める VR生活
tamagokakeg
2
110
The Design of Everyday APIs - PyCon 2024
roguelynn
0
130
スタックトレース始めてみた
kuro_kurorrr
4
1.1k
How to improve maintainability and readability of your automated tests? ( #scrumniigata )
teyamagu
PRO
1
130
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
2k
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
660
120k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Writing Fast Ruby
sferik
622
60k
KATA
mclloyd
16
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
81
44k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
Scaling GitHub
holman
457
140k
What's new in Ruby 2.0
geeforr
338
31k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Git: the NoSQL Database
bkeepers
PRO
423
63k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Visualization
eitanlees
137
14k
Transcript
Haochen Kotoi-Xie on 2024-01-27 (bd04w6) Hermes EngineͷνΧϥΛ ͦͷͰײͥΑ͏! @NGK2024S
Τϧϝεͷ͠Λ͠·͢ Hermès
! ʮΤϧϝεʯͱ͍͏ͱ
! ʮΤϧϝεʯͱ͍͏ͱ ΦϨϯδͷԿ͔
ͷ܅!
"#$ ΞϯέʔτλΠϜ %%% • ʮJavaScriptʯΛ͍ͬͯ·͔͢? • ʮOCamlʯΛ͍ͬͯ·͔͢? • ʮECMAScriptʯΛ͍ͬͯ·͔͢? What
is?
Hermes Engine: ECMAScript ͷ࣮ߦڥ ग़య: https://test262.fyi/ (not by TC39) (2024-01-27࣌)
What is?
React Native ͷͨΊʹ࡞ΒΕͨ
ͷͰɺ& Facebook (ݱmeta)
ΦϨϯδ vs ϛυϦ ͓ஈ ͓৭ ϩΰ(?) ࣮Ոύϫʔ† MKT$ ΦϨϯδ അंతͳԿ͔
206.57 billion EUR (x1) FREE ϛυϦ ӋతͳԿ͔ 1.01 trillion USD (x4.5) †Market Capج४ (2024-01-27࣌) ' ' ⚖ '' '''
ΦϨϯδ vs ϛυϦ ͓ஈ ͓৭ ϩΰ(?) ࣮Ոύϫʔ† MKT$ ΦϨϯδ അंతͳԿ͔
206.57 billion EUR (x1) FREE ϛυϦ ӋతͳԿ͔ 1.01 trillion USD (x4.5) †Market Capج४ (2024-01-27࣌) ' ' ⚖ '' '''
) βɾΤϧϝε
Hermes Engine: ECMAScript ͷ࣮ߦڥ (for React Native) ChakraCore: MS Edge
ͷ(ݩ) ECMAScript Τϯδϯ ࢀߟ: V8 / SpiderMonkey / JavaScriptCore: Chrome / Firefox / Safari ͷ ECMAScript Τϯδϯ ͳʹ? ग़య: https://test262.fyi/ (not by TC39) (2024-01-27࣌)
Source Code: https://github.com/kxcdev/kxc-melange-react-native-template Left: Hermes Engine Right: JavaScriptCore on Google
Pixel 6 !!!!! ͱ͍ͯ
ग़య: https://www.callstack.com/blog/hermes-performance-on-ios Left: Hermes Engine Right: JavaScriptCore on iPhone 12
Mini ͱ͍ͯ
ग़య: https://www.callstack.com/blog/hermes-performance-on-ios ← ← ← *Stock RN = JavaScriptCore Smaller
= Better ͱ͍ͯ
ग़య: https://www.callstack.com/blog/hermes-performance-on-ios ← ← ← ← *Stock RN = JavaScriptCore
Smaller = Better
Source Code: https://github.com/kxcdev/kxc-melange-react-native-template Left: Hermes Engine Right: JavaScriptCore on Google
Pixel 6 !!!!! ͱ͍ͯ
ͳ͍ͥ? • AoT (Ahead of Time) ίϯύΠϧ • Source Code
==> Byte Code • Latency over Throughput • Better App Experience • Optimized for React Native • More Specialized == Easier Optimization
ͬͱ͘ͳΔ? ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement
ͬͱ͘ͳΔ? ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement
ͬͱ͘ͳΔ? ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement
ͬͱૣ͘ͳΔ?? ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement
ͬͱૣ͘ͳΔ?? ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement ग़య: https://speakerdeck.com/tmikov2023/static-hermes-react-native-eu-2023-announcement
ͬͱ͘ͳΔ?? ग़య: https://github.com/facebook/hermes/discussions/1137
ͬͱ͘ͳΔ?? ग़య: https://github.com/facebook/hermes/discussions/1137 ←ൺֱର
ͬͱ͘ͳΔ?? ग़య: https://github.com/facebook/hermes/discussions/1137 ←ൺֱର C → Static Hermes →
·ͱΊ • Hermes (ϛυϦ) ͍! • C ʹඖఢͨ͠Γ?! • Hermes
(ϛυϦ) ΛͬͯΈ·͠ΐ͏! • ࠷ۙͷ React Native ͑ default ͕ Hermes • OCaml ͍͍ͥ! • Hermes (ϛυϦ) ͱͷ૬ੑͬͪΓ!