Flutterにアプリをリプレイスすることを検討している方に向けた記事です。検討する際の助けになるとうれしいです。
諸般の事情によりUnityで制作したアプリをFlutterにリプレイスました。この作業の中で感じたことを記載します。
Flutterの良かった点
・開発速度が速い
Flutterに関する知識の類は下の記事を書いた時点でほぼほぼ0の状態でした。
※2月19日に記載しました。前日Flutterのインストールをしていました。
規模が小さなアプリですが、一か月ちょっとでリプレイスが完了したことになります。
巷で言われている学習コストが小さいという話は嘘ではないなと感じました。
・背景透過のスクリーンショット等が簡単に作成できた
パッケージを利用しましたが実装がとても簡単でした。
・ビルド~リリース関連のトラブルがほとんどなかった
iOS、Andoroidとも少なくとも私の環境では調査が必要なビルドエラー等がほぼありませんでした。
・Admobとの相性がいい
ビルドなどでトラブルが発生することもなく、実装も簡単で動作も安定していました。
巷で言われているGoole製品との相性がいいという話は嘘ではないなと感じました。
・比較的デザインの良いアイコンやローディングバーなどが準備されている
人によってはデザインが気に食わないと感じるかもしれませんが、もともと良いデザインのアプリではなかった為ありがたく使わせてもらいました。
Flutterの悪かった点
・UI周りに癖がある
レイアウト関連のWidgetの入れ子の順番によってExceptionが発生したりWidgetが予期せず再描画したりと、UI周りに癖があるなと感じました。
学習によって解決する事とは思いますが、プログラミング初心者やお試しで使っているモチベーションがそれほど高くない人の心を折るのには十分な挙動で、ここら辺がFlutter利用者のすそ野が広がらない/流行らないといわれる要因の一つになっているように感じました。
・描画が遅い
描画周りがもっさりしています。(もちろん最適化に関する技術が不足している点はあると思います)
対象のアプリでは一覧表示などが明らかに遅くなってしまいました。動的なアプリではないためそのままリリースしています。
以上が感じた良い点/悪い点となります
癖があり不向きなアプリケーションはあるとは思いますが、静的な小規模アプリケーションを作るのには悪くないプラットフォームだと思いました。
巷で言われている日本語のドキュメントが少ないという話についてはこの記事を書いている時点ではほとんど気になりませんでした。
解説記事を書かれている方々に感謝します。