Flutterとは?
Flutterとは?
Flutterは、Googleが2017年に発表したオープンソースのマルチプラットフォーム開発フレームワークです。1つのコードベースでAndroid、iOS、Web、Windows、macOS、Linuxを対象にできます。
Flutter 1はAndroidとiOSを対象としていました。2021年のFlutter 2ではWeb、2022年のFlutter 3ではWindows、macOS、Linuxが正式にサポートされました。登場以来、Flutterは世界中で利用されています。2023年3月時点で、GitHubリポジトリのスター数は15万を超えていました。
2021年の調査では、モバイルアプリ向けマルチプラットフォームフレームワークの利用率でReact Nativeを上回り、Flutterが42%で首位になったという報告もあります。
参考: Statista, “Cross-platform mobile frameworks used by software developers worldwide from 2019 to 2021”
公式ドキュメントが充実しており、コミュニティによる情報も豊富です。Flutterアプリケーションは、モダンなコンパイル型マルチパラダイム言語であるDartで記述します。
Flutterが注目される理由
Flutterにはさまざまな利点があります。ここでは5つに分けて紹介します。
ポイント1. 自由でオープンなフレームワーク
Flutterは無料のオープンソースソフトウェアです。ソースコードはGitHubで公開されており、エンジニアは内容を確認し、カスタマイズし、改善提案を送れます。コミュニティでの自由な情報交換が、フレームワークとノウハウの発展を支えています。
ポイント2. マルチプラットフォーム
FlutterはAndroid、iOS、Web、Windows、macOS、Linuxを1つのコードベースで対象にできます。通常、各プラットフォームでは次のような技術が必要です。
- Android: Java、Kotlin
- iOS: Objective-C、Swift
- Web: HTML、CSS、JavaScript、ReactやVue.jsなどのフレームワーク
- デスクトップアプリケーション: Electron
Flutterを利用すると、プラットフォーム固有技術の学習量を減らし、複数のアプリケーションをまとめて管理できます。
ポイント3. Googleによる開発
FlutterはGoogleが開発しており、活発なコミュニティに支えられています。更新や技術情報が日常的に提供され、国際的なカンファレンスも定期的に開催されています。
YouTubeやTwitterでも情報が発信されています。
Flutterは多くの商用アプリケーションでも採用され、書籍、記事、勉強会を通じたノウハウ共有も活発です。
ポイント4. 整備された開発環境
Flutterは世界中のツールやサービスと連携できます。VS CodeなどのIDE向けプラグインがあり、FirebaseやCodemagicなどのクラウドサービスも利用できます。IDEとエミュレータを接続すれば、実機がなくてもテストでき、ホットリロードで変更をすぐに確認できます。アプリケーションのビルド、パッケージの追加、デスクトップ実行ファイルの生成も容易です。
ポイント5. Google製品との相性
FlutterはGoogleが開発しているため、他のGoogle製品と連携しやすい点も特徴です。Material DesignやFirebaseを標準機能またはプラグインとして利用でき、デザインと機能を効率よく改善できます。