Flutter(フラッター)とはGoogleによって開発されたUIツールキットです。一つのコードベースでスマホアプリやデスクトップアプリを開発することができます。この記事では、そんなFlutterの特徴やメリットデメリットなどをご説明していきます。
Flutterの特徴
Flutterはオープンソース
Flutterはオープンソースであるため、誰でもコードを読んだり、プルリクを送ったりすることができます。
Github: https://github.com/flutter/flutter
Flutterはマルチプラットフォーム
Flutterは単体のコードで、iOSやAndroidで動作するアプリを作ることができます。技術的には、Dartという言語で書いて、iOSやAndroidで動作できるようにするためにARM機械語にコンパイルしています。
Flutterは生産性が高い
Flutterはホットリロードができるため、コードを修正したら即座に動作を確認することができます。再起動やコンパイルに時間がかかることがありません。
Flutterは動作が高速
Flutterは高速に動作することができます。なぜなら、flutterはChromeやAndroidでも実績のあるSkiaのグラフィックライブラリを使っているためです。
Flutterのメリット・デメリット
メリット
- 一度コードを書けば、iOSでもAndroidでも動作するアプリを開発できるため、工数を大幅に圧縮することができる
- これまで一般的にはiOSエンジニア、Androidエンジニア、というようにデバイスごとに必要でしたが、Flutterを採用することで一本化することができる
デメリット
- iOS/AndroidそれぞれのOS固有の機能については個別に実装する必要があります
- 日本で採用事例がそこまで多くないため、日本語で書かれている資料がまだ不十分
まとめ
Flutterはまだまだ普及途上であるため、慣れるまでには苦労するかもしれませんね。一方で、単一のコードでマルチプラットフォーム(iOS/Android)で動作するのは大きなメリットといえるため、今後大きく普及する可能性もあります。そんな状況も見越していまから、Flutterのスキルや経験を身に着けていきたいですね。