Androidはワンツーパンチ 三歩進んで二歩下がる

プログラミングやどうでもいい話

Swift初心者ですがiPhoneアプリ「ポケット糖質量」をリリースいたしました

こんにちは。さくらです。
Rails版・Android版に続き、iOS版のアプリ「ポケット糖質量」をリリースいたしました。

ポケット糖質量

ポケット糖質量

  • Yukari Sakurai
  • ヘルスケア/フィットネス
  • 無料

食品に含まれる糖質量を便利に表示・検索出来るシンプルなアプリです。
もしよろしければダウンロードしてみてくださいね(●´ω`●)

f:id:sakura_bird1:20180417171423p:plain

Android版リリースの時の記事はこちらです。
sakura-bird1.hatenablog.com
Web版リリースの時の記事はこちらです。
sakura-bird1.hatenablog.com

自分がiOS版アプリを使いたいという理由もありましたが、
SwiftやiOS開発にとても興味があったので、今回実際にコードを組み立てて
アプリリリースまで持っていくことが出来て本当に嬉しいです。

最初にSwiftをいじったのはこの記事の頃ですね。
sakura-bird1.hatenablog.com

ここから休み休みですが、サンプルを書き溜めて実際にアプリに着手したのは
3月になっていました。

実はこのアプリはGithubソースコードを公開しています。
経験者の方からしたらひどいコードだと思いますが…。
github.com

最初のcommitが3/21で4/13にcommitした分をリリースしましたので、
1ヶ月弱ぐらいでしょうか。
この期間はなるべく毎日時間を取るようにして頑張っていました。

Android版を作った時は、数年Androidに関わっているのにあらゆる点で力不足を
感じていて(しかもここのところ記憶力がめっちゃ低下中)、
情けなくて、後ろ向きな気持ちでいっぱいでした。

でもiPhone版を作っている時は、プログラミングを始めた頃の「動いて嬉しい!」
という素朴な喜びをたくさん感じられて、幸せな時間を過ごせたと思います。


f:id:sakura_bird1:20180417211034p:plain

Swiftという言語も気に入っています。
Swiftのコードは読みやすいし、
自分のような初心者にも書きやすいように思います。
でも勉強が全然足りていなくて雰囲気で書いてしまった部分が多いので、
もっと言語仕様を押さえて使いこなしたいです。

Swiftはバージョンアップで仕様が変わりますよね。
この先もちゃんと付いていけるかな。ちょい心配。


f:id:sakura_bird1:20180418040802p:plain:w300

SDKのターゲットはiOS11以上にしました。
とにかくリリースしたかったので、複雑さを無くして
出来る限り開発のハードルを下げました。
そもそもポケット糖質量はほとんど静的データを取り扱っており、
非常に簡単な部類のアプリです。
それを更にAndroid版にはある機能を減らしたり、
サポートSDKを11以上にしたりで簡単になるようにしました。
例えば検索画面は、Android版は検索窓に入力した文字が
次回からサジェストされますが、iOS版はそれはありません。
iOS11以上で使えるSearchControllerを使って楽に実装するようにしました。
他にもアプリのビルドも本番用とデバッグ用でBundle IDを分けたりしていません。
(これは今後やるつもりですが)ビルド周りは特に手を抜いてる気がします。

f:id:sakura_bird1:20180418041228p:plain:w250

どうやってiOSの勉強をしたのかは次のような感じです。
Appleの公式チュートリアルを2つやった
 1. 「A Swift Tour
 2. 「FoodTracker
YouTubeチュートリアル動画を色々見た
 英語になっちゃいますが、「Swift autolayout」のように検索すると色々出てきます。
 本当に参考になりましたし、Xcodeの使い方もだいぶわかりました。
 お金のある方は日本語の動画のあるスクールを受講するといいんでしょうね。
 私が心のなかで師匠と呼んでいるのはブライアンさんというお方です。おすすめ!
www.youtube.com

以上の知識を核としてWeb記事で補完し、
たまに人のコードをチラ見して勉強しました。

本を1冊も読んでいないんですが、Swiftの言語仕様を
網羅している解説本を読みたいです。
適当に書いてる部分が多いのを自覚してます。

開発で苦労したところは、レイアウトや画面遷移まわりです。
メインのTableViewを別のControllerに埋め込んで使い回す部分や
AutoLayoutの思い通りにいかなさなどです。こんな記事も書いていました。
sakura-bird1.hatenablog.com

それでも素晴らしいOSSや技術記事に本当に助けていただきました。
別途記事にしたいと思っています。
情報を発信してくださっている方々、本当に本当にありがとうございました!


そしてとうとう私も税込み¥12,744払ってApple Developerになってしまいました。
f:id:sakura_bird1:20180417211833p:plain

1年で有効期限切れるし、Androidと違って高いですね(TдT)
ポケット糖質量は収益を期待していませんが、Apple税ぐらいは
稼いでもらいたいものです。
次回のアプリを作る時も、Apple税がもったいないのでiOSファーストに
なりそうです。

一匹の蟻も通さないような恐ろしいイメージのあった
AppStoreの審査ですが、以外にも一発で通過しました。
これには拍子抜けでしたが良かったです。
公式サイトやプライバシーポリシーのページを設定したのもよかったんでしょうか?
だとすると、Web版ポケット糖質量を閉鎖しない方がいいかもしれませんね。
リリース後放置状態なので、閉鎖も考えていたのですが保留にしておきます。


f:id:sakura_bird1:20180418142803p:plain:w250

今後ですが、作ったアプリの改修作業を頑張ります。
Androidアプリの「インコ発信確認」のメンテナンスと
音声追加、ドライブモード(Bluetooth)追加をしたいと思っています。
sakura-bird1.hatenablog.com


あと、またミニアプリを作りたいと思っています。

それでは読んでくれてありがとうございました!


※いらすとやさんの画像お借りしてます。
毎度感謝しております( ´∀`)