Flutterの現状とミライについて考察
皆さん、こんにちは。
ジェーエムエーシステムズ(以下、JMAS)で、モバイル向けシステム開発を担当している山田です。
弊社では、Flutterを活用した独自のフレームワーク「J-flut」でモバイルアプリを開発し提供しています。J-flutは、「iOSもAndroidもぜんぶまとめてワンソースで。高品質なアプリ開発をよりスピーディーで低コストに。」をキャッチコピーとして、Flutterの良さを100%引き出し、これらのメリットを実現しています。
FlutterやReact Nativeは、近年注目されるモバイルアプリケーションフレームワークで、「これまでの常識を変えるマルチプラットフォーム」とも言われています。
ただ、Flutterはまだまだ発展途中のため、聞いたことはあるけど、よく知らないという方もいらっしゃるのではないでしょうか?
そこで今回のコラムでは、Flutterの特徴、React Nativeと比べた現状、そしてFlutterのミライについて紹介していきたいと思います。
Googleが開発したアプリケーションフレームワーク「Flutter」
高速でオブジェクト指向のプログラミング言語であるDartに基づいており、高パフォーマンスとUIデザイン面、高生産性で開発者の人気を集めている技術です。
■Flutterのメリット
- iOSもAndroidもワンソースで
- アプリ開発がより高速に
- ネイティブパフォーマンス
ワンソースで複数のプラットフォームに対応するため、OSやデバイス環境に縛られことなく、自由な運用が可能です。
ホットリロードとカスタマイズ可能な豊富なウィジェットにより、迅速にアプリ開発を行うことが可能です。
Swift / Kotlinで開発されたアプリと比べても遜色のないパフォーマンスで動作します。
Flutterのメリットを紹介してきましたが、以下の点を考慮しなければなりません。
■考慮すべき点
- ネイティブ言語のように自由なプログラミングができないため、UI(ユーザインタフェース)に関する調整が難しい
- イベントフックがネイティブ言語とFlutterで異なるため、一般的なモバイルアプリ技術者にとっては使いにくい
- Flutterの知見を持つ技術者があまり市場におらず、大規模な開発を実施する際の要員調達に難がある
ただし、上記1. については、UIに関する調整が難しい反面、要件に合致すれば長所にもなります。マテリアルデザイン準拠で要件を満たす場合は、Flutterの機能で提供されるテーマをそのまま利用できるので、コスト削減も可能になります。
React Nativeとの比較から考察、Flutterの現状は?
■Googleトレンド:「Flutter」vs「React Native」
2020年7月には、検索ワードとして、Flutterの人気度が上昇してReact Nativeを抜いていることが分かります。
■開発者規模:「Flutter」vs「React Native」
続いて、開発者の規模です。
Flutterは増加傾向で2021年には第一位、ReactNativeは2021年には減少傾向にあります。
■開発実績:「Flutter」vs「React Native」
開発実績はどうでしょうか。
公表されている開発実績数は、React Nativeが多いようです。しかし、TOYOTA社が2021年にFlutterの採用を公表したことで、日本の大企業にも選ばれる技術として注目され始めました。
Flutter(https://flutter.dev/showcase) |
TOYOTA、Google Pay、Alibaba Group、ByteDance |
React Native(https://reactnative.dev/showcase) |
Meta:Facebook、Facebook Ads Manager、Oculus Microsoft:Office、Outlook、Teams、Xbox Game Pass、Skype メルカリ、Pinterest、PlayStation App、WordPress – Website Builder Discord |
■プログラミング言語人気(Dart)
Dartは、Flutter開発をする際に使用するプログラミング言語です。比較的に新興言語の分類に入るDartも近年人気順位が上がってきています。前年度はランク外だったにもかかわらず、2022年にはTop20以内にランクインしました。徐々にランキングを上げてきていることから将来性も十分にあることが分かります。
まだまだ発展途中の言語ではありますが、Googleが提供しているプラットフォームということもあり、今後さらなる飛躍を遂げる言語になるのではないかと予想しています。
Flutterのミライ
この記事をご覧になった方で、まだFlutterやDartについてあまり知らないという方は時間があるときに少し調べてみると良いかと思います。
近い将来、みなさんにも実務で使用する機会が訪れるのではないでしょうか。
弊社ではFlutterを活用した独自のフレームワーク「J-flut」で開発を行い、高品質なモバイルアプリをよりスピーディーで低コストに開発し提供しています。
「J-flut」紹介コラム:
「Flutterを活用したモバイルアプリ開発の注意点とは」