ロンドンで開催されたFlutter Liveカンファレンスで、GoogleはFlutterの最初の安定版リリースをローンチした。これはDartベースのモバイル開発プラットフォームで、iOSとAndroidで1つのコードベースを共有したアプリを、ネイティブUIを使って書けるようにすることを目指している。さらに、GoogleはFlutterランタイムの実験的なWebベース実装も発表した。これはFlutterアプリを標準Webブラウザにもたらすことを目指している。
9ヶ月のベータを経て、Flutter 1.0では、Dart 2.1、新しいUIウィジェット、「Add to App」や「Platform Views」のプレビューといった新機能とともに、安定性とバグ修正に非常に重きが置かれている。
Dart 2.1はより小さなコードサイズ、高速な型チェック、より良い診断を提供する。Googleによると、Dart 2.1は圧縮出力サイズを17%、コンパイル時間を15%削減するという。またDart 2.1は、mixinとしてしか利用できない、クラスのための新しいmixin
キーワードによるmixinサポート改善や、double
が期待されるところでint
を渡せないようにする厳格な型チェック、新しいHTTPステータスコードなどなど、新しい言語機能を提供する。
Add to Appは、既存アプリのFlutterへの漸進的なポーティングを可能にするGoogle流の方法だ。プレビューでは、Add to Appは、Flutterアプリ内のFlutterランタイムとネイティブのiOSもしくはAndroidコンテナとの共存を頼りにしている。これは増えつつあるflutter create
コマンドで使えるテンプレートにより構成される。これは既存アプリにリンクして、Java/ObjC-Swiftコードから使えるActivity
やViewController
を提供するライブラリを作成する。こうすることで、開発者は自分のアプリに簡単に新機能を追加したり、既存の機能をFlutterを使って再実装することができる。
Platform ViewsはAdd to Appと二重のように見えるだろう。実際、これはAndroidもしくはiOS UIコントロールをFlutterアプリに含めることを可能にする。これを実現しているのは、2つの新しいウィジェット、AndroidView
とUiKitView
だ。Platform Viewsの有用な応用例として、Google MapsやWebViewといったネイティブプラットフォームコントロールをラップするプラグインの作成がある。有意義なことに、Platform ViewsプラグインはFlutterウィジェットに基づいているため、ネイティブコントロールはFlutter UIコントロールと自然に共存できる。Add to Appと同様、Platform Viewsもまだプレビュー品質だとされている。
すでに述べたように、GoogleはFlutterランタイムのWebベースの実験的実装であるHummingbirdも発表した。これはFlutterアプリをブラウザにもたらすことを目指すものだ。HummingbirdはDartの機能を利用して、ネイティブARMに加えてJavaScriptにコンパイルする。Flutterのメインフォーカスがモバイルにあることは変わらないが、HummingbirdはFlutterがさらなるプラットフォームに進出するための手広い戦略の1つだ。Windows、macOS、Linuxをターゲットとする別の実験的プロジェクトとしてFlutter Desktop Embeddingもある。
Flutter 1.0はFlutterのサイトからダウンロードできる。
Rate this Article
- Editor Review
- Chief Editor Action