はじめに
Flutter #2 Advent Calendar 2019の6日目の記事です。
投稿が遅れている方がいましたので勝手に間借りさせていただきました。元々書かれる予定だった方に関しましては、もちろん記事が書けましたらお譲りいたしますので連絡をいただければと思います。
2019年10-12月に実際にアプリをリリースした経験をもとに、学生の個人(小規模チーム)開発にFlutterがオススメな理由を紹介していきます。
- リリースしたアプリ
- 開発効率の高さ
- 学習リソースも充実、初心者の敷居も高くない
- UIの作りやすさ
- 審査の緩めなAndroidだけ先行配信できる
- Flutterを使うデメリット
注意
- React Nativeなどの類似クロスプラットフォーム開発フレームワークとの差異については触れません。実際React Nativeなどもある程度同じようなメリット/デメリットがあるんじゃないかと思います。
リリースしたアプリ
- 「スタマチ 大学生限定の学習用マッチングアプリ」
Android版リリースまでの 開発期間は3ヶ月弱。
恋人を見つけたい人向けではなく、主に勉強仲間を見つけるためのマッチングアプリです。
また、大学生限定と書かれていますが、現状は僕の所属する北海道大学(北大)のみで使えるアプリとなっています。
開発効率が高い
Flutterを使えば、以下のような特徴から、講義や研究、バイト等で 時間のない学生や、仕事で忙しい個人開発者でも効率よくiOS/Android 両方でアプリをリリースできます。
- ひとつのコードでiOS/Androidアプリができる
-
Hot Reload
- リビルドが数秒で終わります。 iOS/Androidネイティブよりも時間効率が良い!
Flutterはクロスプラットフォームフレームワークであるため、iOS/Androidで別別のコードをほとんど書く必要なく両OS対応のアプリを開発していくことができます。
また、Hot Reload・Hot Restart機能により、ネイティブ開発では時間のかかるビルドに苦しまされることなく、細かいUIの調整や状態変数のリセットなどがスムーズにできます。