概要
会社のiOS合宿に参加して、FlutterでiOSアプリを作った。
当方はAndroidエンジニアで、iOSアプリについてはド素人
「FlutterならiOSアプリも作れる!」という勢いで合宿に参加した。
ちなみに、Flutterもド素人である。
iOS合宿とは
会社のiOSエンジニアの企画で「Apple関連のなにかを開発する」というテーマの合宿である。
期間は2泊3日(7/19〜7/21)で、開発日は7/22の1日のみ。
(事前準備や学習は何でもOK)
宿は湯河原の おんやど恵みという旅館。
開発合宿を推してる宿らしい。
旅館の和室にテーブルを並べ、皆でMacを並べてモクモクと開発してた。
合宿の準備
さすがにFlutterド素人のまま合宿に参加するわけにはいかないので、Flutter入門本を買った。
Android/iOSクロス開発フレームワーク Flutter入門
https://www.amazon.co.jp/dp/4798055832
合宿の1週間前から読み始めるが、読んだだけでコードは1行も書かなかった。
(忙しくて...という言い訳)
とりあえずMacにFlutterとDartの開発環境は整えておいた。
(Android StudioのFlutterプラグインとか)
合宿で作ったもの
成果物は、画面を2つ作った。
この画面レイアウトを作るだけで丸1日かかった。
一応、画面遷移もできる。
実は、この画面の元となるアプリが存在している。
そのアプリは自分が個人開発した「やいまふに」というAndroidアプリで、
このアプリのiOS版をFlutterで開発したい、という狙いがある。
成果物のコード
汚くても動くコードだし公開しちゃう
https://github.com/ikemura23/yaimafuni_flutter
元となるアプリ
八重山諸島の船の運行確認アプリです。
https://play.google.com/store/apps/details?id=com.banbara.yaeyama.liner.checker&hl=ja
Flutterの開発で参考になったサイト
Flutter Studio
レイアウトを組み立てるときに使ったが、癖がある。
Flutterの特性を知っていないと、このサイトを使いこなすは厳しいかも
(特にRowとかColmunとか)
Flutter Widget catalog (公式)
よく使うWidgetが紹介されている。
レイアウトを組むには以下ページが参考になる。
Flutter開発する前に知っておきたい35のWidget一覧 - Qiita
この記事はUI作成す時にとても参考になった
合宿で作り残したもの
- トップ画面と詳細画面のレイアウトが雑すぎる
- API通信処理を実装してない
Flutterど素人なのでしゃーない
さすがにAPIまではムリだった(参考記事は用意していたが)
今後の予定
API通信を実装して、レイアウトも良さげになれば、iOS版アプリをリリースしたい!