特集/連載
事前コンパイルで高速起動:
Facebookがモバイルアプリ用JavaScriptエンジン「Hermes」を公開
Facebookは、JIT(Just In Time)よりも高速にアプリが起動するAOT(Ahead Of Time)を採用したJavaScriptエンジンをオープンソースで公開した。
Hermes(ヘルメス)はギリシャ神話に登場する神で、貿易、紋章、商業をつかさどる。だが、盗みや策略の神でもある。
Facebookは、この神にちなんで同社のJavaScriptエンジンプロジェクトを「Hermes」と命名した。同社は恐らくこの神の高潔な資質を思い浮かべていたのだろう。同社はHermesをオープンソース(MITライセンス)で公開した。
Hermesは、Facebookの「React Native」を使って構築された「Android」ネイティブアプリケーションのネットワーク負荷の軽減を目的としたものだ。React Nativeは、Fetch APIを提供してネットワークのニーズに対応する。
Hermesはアプリケーション起動時間を短縮し、メモリ使用量を減らし、結果的にコードの全体的なフットプリントを小さくしようとしている。
では、起動時間に注目するのはなぜだろう。
アプリケーションの起動時間は、テクノロジー業界がTTI(Time To Interaction)と呼ぶ属性に影響する。TTIは、アプリケーションが起動してからユーザーが利用できるようになるまでの時間だ。TTIは消費者向けアプリケーションを作るソフトウェア企業の成功を左右する一因になる。
起動時間を短くする方法
Hermesの秘密の一つは、バイトコードのプリコンパイルを実行する機能にある。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.
