見出し画像

Flutterでアプリを作ったらSwiftには戻れなくなった

Swiftで作成したアプリをFlutter化してAndroid版を公開しました。
宣伝ついでにFlutterの感想を書いてみようと思います。開発に一段落ついたところでの感じた内容です。

1. なぜSwiftから作り直したのか?
2. Flutter化したメリットや効果は?
3. Flutter化する際にUIで考えたこと

ちなみにアプリ名はGrafanizerというもので、パクリ気味な名前からもすでに分かる通りGrafanaのグラフをスマートフォンで簡単にチェックできるアプリです。
(Grafanaでも一応レスポンシブルなページレイアウトで見ることは出来ますが、ちょっと使い勝手が悪い感じですよね)

もし興味があればこちらからどうぞ。iOS版は追ってリリース予定です。

書いてみたら少し長くなったので、1と2は別記事にしました。興味がありましたら御覧ください。

1. なぜSwiftから作り直したのか?

こちらからどうぞ

2. Flutter化したメリットや効果は?

こちらからどうぞ

3. Flutter化する際にUI面で考えたこと

どんなUIにしようか迷うほどFlutterにはUI用のパーツが豊富にあるので、とくに困ることは無いと思います。追加したのはIconだけです。

ですが、少し前からこの「UITableView の衝撃」というページににかなり感銘を受けてましたので、今回のFlutter版での書き直し時にはListViewベースで実装しました。
GoogleのアプリによくあるDrawerとかTabBarを使って今どきのUIにしたい思いもありましたが、シンプルにListViewを使うのが一番ですね。拡張性も分かり易さも抜群だと思います。

凝ったアニメーション等を実装してきれいなUIを作るのもありだとは思うのですが、UIが競争ポイントではないアプリではシンプルに作るのが一番だと思います。

そんなListViewですが、Flutterでの開発はかなり楽です。Xcodeでカスタムセルの.xibを作った人であればいろいろなセルに対応する面倒さがわかると思いますが、Flutterではかなり楽に作成・修正できます。もうなんでもListViewで良いんじゃないの?というくらいに。

今後

まずは先行しているSwift版の機能を実装する予定です。その後Swift版の既存データとの互換性をもたせた後にiOS版をリリースします。
その後は以前から考えていただけで実装できてない機能がいくつかありますので、それを実装して両環境で同時リリースと勧めていきたいです。

ですが、まずは0.9として公開しているAndroid版を1.0にすることが当面の目標です。機能的には問題なさそうなので、アプリ内課金が有効に働くかどうかだけが正式版へのポイントです😁

最後に

Flutterが狙ってるアプリの仕様に合致すれば、かなりお手軽にアプリを作ることができます。いちど作ってみるともうSwiftには戻れません。
(SwiftというよりもXcodeでの開発というのが正しいのかもしれませんが)

まだまだ日本語の情報は少ないと思いますが、日本語の情報が増えればFlutter製アプリが増え、Flutter製アプリが増えれば日本語の情報が触れるという好循環が生まれると思います。

ちょっと思うことがあり、自分のBlogやQiitaで書いていた技術的なネタもこちらで書こうと思いますので、今後もよろしくおねがいします!

・・・

Twitterにもちょこちょこ顔だしてます


趣味のプログラミングにもいろいろとお金がかかって大変なんですわ。特に小遣い制の妻帯者は。