BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース パフォーマンスの向上と新しいネイティブプラグインシステムを実現したIonic 2

パフォーマンスの向上と新しいネイティブプラグインシステムを実現したIonic 2

ブックマーク

原文(投稿日:2017/01/28)へのリンク

IonicチームがJavaScriptフレームワークIonicのバージョン2.0をリリースした。新しいコンポーネントや機能,ツールなどに加えて,新たにネイティブなプラグインシステムが提供される。

ブログ記事“Announcing Ionic 2.0.0 Final”の中では共同創設者のMax Lynch氏が,Angular 2上に“次世代のIonic Frameworkを構築する”ために,IonicチームとAngularチームが密接に協力して開発を進めたことを説明している。Lynch氏によれば,“難航”する場面はいくつかあったものの,極めて高速なAngular 2の恩恵を受けた“本質的な部分からのパフォーマンス改善を,アウトオブボックスで”Ionicアプリが手に入れたという意味から,開発チームの決断の正しさが証明された形になった。

Ionicバージョン2.0の改善の中で最も重要なのは,ビルトインされたエラー処理とデバッグ機能だ。

Ionic 2の最初のRCリリースにはApp Scriptという,アプリをビルド,テスト,実行するための新しいビルトツールチェーンがあった。最終リリースには,そのアプリケーションにエラー処理とデバッグ機能が新たに組み込まれる。Lynch氏によると,

開発中にコンパイルエラーが発生した場合,ionic serveコマンドを使用することで,エラーの詳細がブラウザのウィンドウに直接表示されます。問題コードを追跡するために端末とブラウザの間を行ったり来たりする必要がなく,開発に集中することができるという点において,この機能は極めて有用です。

パフォーマンスの向上に関しては,JavaScriptのスクロールを置き換えたことにより,AndroidとiOS上で60FPSのスクロールを達成している。Ionicの仮想スクロールの実装は,非常に大きなリストを最小限のパフォーマンス損失で可能にするという点において,アプリケーション開発に対する大きな支援になる,とLynch氏は述べている。また,Ionic 2のレンダリングパイプラインは,ビューの更新部分のみを描画することによって,レイアウトのスラッシングと再描画の削減に寄与している。

2.0最終リリースに対するコミュニティの反応は肯定的なものだ。Hacker Newsでのリリースに関する議論では,ユーザjbmorgadoが次のような質問をしている。“とても印象的だったのは,Ionicアプリのサイズが小さいことです。3MB以下のオーダというのは素晴らしいですね。ですが,起動時間は少し長いと思います。AndroidのReact Nativeが2秒以下なのに対して,ionic 2(ベータ版)では,最も単純なアプリケーションでも5.5秒程度の起動時間を必要としています。私にとってこれは,ユーザビリティの面で大きな影響があります。起動時間を改善する予定はあるのでしょうか?”

IonicのJustin Willis氏が回答を寄せている。

起動時間は私たちが今, 最も注目している点です。特にPWAに関しては,優れたユーザエクスペリエンスを確保する上で,TTI(Time to Interactive)が極めて重要です。現時点でいくつかの取り組みをしていますが,最初に提供できる可能性の大きいものはコード分割です。コードを分割することによって,ひとつの大きなバンドルを送信するのではなく,もっと小さなバンドルをルートに基づいて遅延ロードすることが可能になります。これによって,アプリが最初にロードされる時には,最初のビューに必要な最初のバンドルのみをロードあるいはパースして,それ以外のバンドルについては遅延ロードすることが可能になります。

Ionic 2を使用するためには,npm install -g ionicで最新のCLIにアップデートした上で,Getting Startedガイドに従って新たなプロジェクトを始める必要がある。Ionic 2.0には現在,Angular 2.2.1が必要な点に注意が必要だ。これより新しいバージョンのAngularではプロダクトビルドが中断される。Ionicチームが今後Angular 2.3をサポートするのか,あるいは直接Angular 4に進むのか,本記事の時点では決定していない。

この記事を評価

関連性
スタイル

この記事に星をつける

おすすめ度
スタイル

BT