close

逆算タスクカレンダー[iOSアプリ]

App Store ▼  GitHub ▼

Scope

Swift / Xcode / CocoaPods / SDK / Git / XD

Detail

19.09からSwiftを学ぶ過程でアウトプットとして開発したオリジナルiOSアプリです。19.12.05リリース。
予定までの日数が一目でわかるタスク管理アプリ「逆算タスクカレンダー」です。

期間

デザイン〜リリース 約50日(Swift学習開始から83日)

iOSアプリデザインのコンセプト

開発を通じて得たもの

自己解決能力

一番私が得られたと思う能力は自己解決能力でした。
Swift独特の型やライフスタイルに戸惑い、エラーや様々なバグに日々悩まされました。

その都度キーワードを工夫し調べ、実際に試してダメなら別の方法を試す。
エラー解消まで効率的に粘り強く、論理的にトライアンドエラーを繰り返しました。

アウトプットを癖付けることでの変化

書かせていただいた記事(Qiita)[Swift5]スライス処理とArraySlice型

エラーから解消までを、その時だけの成功にせず、今後に生かす工夫としてアウトプットをするということを意識づけました。

Qiitaや当サイトのBlog記事などにトライアンドエラーで解決した内容をまとめ、日々のタスクはTwitterで83日間毎日記録いたしました。
アウトプットは、より正確な情報を得るモチベーション、より他者に役立つ情報を提供したいという技術取得に対する欲求につながりました。

煩雑化する配列からデータ取得や効率化を思考する

書かせていただいた記事(Qiita)
[Swift5]日付でソートした配列の順序変更を、その他の配列にも適用させる

日付の様々なformat方法や順序取得、配列操作、曜日取得など応用可能な知識を得ると同時に、煩雑化していく配列で、データの取得やその効率化を考える楽しさを感じました。

コードを見ていただくと効率の悪い記述方法は多々あるとは存じますが、
ローカル通知のためのデータ取得など、どの配列からどのタイミングで取得すれば効率的かを考えぬいて実装いたしました。

自ら考え抜く

書かせていただいた記事(Qiita)
UITableViewの最大スクロール時に余白を作る実装パターン

最初にデザインしたカンプをSwiftで表現する上で初めてのiOSアプリ開発では少しイレギュラーであっても、自ら実装方法を考えました。

なぜなら、実務でデザイナーはプログラマーでないことが多い。
そのため、作成されたカンプがSwiftでの実装のし易さを考慮されていないことが実務では多いだろうと予想したためです。
個人開発の時点で実装可能な範囲要相談の範囲を学ぶ訓練は有用と考え、ある程度こだわり抜きました。

やり抜く力

リリースまでSwift学習開始から83日間、1日も休むことなく前半は平均8H/日、後半は12時間/日前後をSwiftのインプットとアウトプットに費やしました。
(当サイトのコーディングや記事作成を含めれば起きている時間ほとんどを作業に費やしました。)

前半は学習の癖を付けるためにカフェで半日、残りを自宅というルーティンを組みました。
次に「プログラミングを日常化する」へ方向転換、自宅での習慣化に成功しました。
後半は自宅で起きている時間はほとんどをPCの前での作業に費やすことができていました。

目的に向かって最後までやり抜く力を得られたと感じます。

また、精神的な進化はアプリエンジニアとして生きるという覚悟を得られた点です。
寝ている時間もエラーコードの問題解決に挑んでいました。
寝た間で考えた解決法で起きた直後に実装して即解決ということも何度もありました。

その他

使用教材

Udemyの教材▼
【iOS13対応】未経験者がiPhoneアプリ開発者になるための全て iOS Boot Camp

実際に利用したのはこちらの動画教材のみです。
広い範囲を効率よく網羅されており体系的に学ぶのに最適でした。
(リンクはアフィリエイトではありません。)

没ロゴ

「カレンダー」と「算」を合わせたロゴを作りましたが、
今回は特に使うところがありませんでした。

カンプデザイン

【構想〜カンプ作成 1日】
機能はシンプルにするため削り、UIは変更しました。

没アプリ案

競合アプリに同様のものがあるため没案としました。