100 Days of SwiftUI【Day 31〜Day 35】
こんにちは、白くまコージです!
iOSアプリを開発できるようになるため、Swiftを勉強中です。
100 Days of SwiftUIのDay 31〜Day 35が完了したので、ここに記録を残します。
学習記録
Day 31 – Project 5, part 3
学習時間
30分
学んだこと
チャレンジパートのため、以下の課題に挑戦しました。
- 許容しない回答パターンを追加
- ツールバーにゲームを再スタートするボタンを追加
- ユーザのスコアを表示するテキストビューを追加
感想
Project 5のチャレンジパートです。
課題自体は全て実装完了できました。
スコアを表示するビューを追加するにあたり、デザインを意図通りにするのはやはり難しいと感じています。
@Stateに関する理解がまだ曖昧ですが、おそらくvar body内で値を更新するものについてはつける必要があるという理解であっているはずです。
Day 32 – Project 6, part 1
学習時間
60分
学んだこと
- 暗黙的アニメーションの実装方法
- 明示的アニメーションの実装方法
- アニメーションのカスタマイズ方法
感想
Project 6の解説パートです。
アニメーションは出来上がったものを見るのが楽しいですね。それなりに簡単に作れてしまうので、いろんなものにアニメーションをつけたくなってしまいそうです。
Day 33 – Project 6, part 2
学習時間
60分
学んだこと
- アニメーションを複数積み上げる方法
- ジェスチャーをアニメーションする方法
- transitionを使ってViewを表示したり隠す方法
- ViewModifierを使ってtransitionをカスタマイズする方法
感想
Project 6の解説パートです。
アニメーションを使って実装されたものを見ると、SwiftUIってすごいんだなと思い知らされました。特にドラッグのジェスチャーを使ってビューをヘビのように動かすプログラムはすごいと思いました。
一方で、最後のViewModifierを使ったコードは難しくてよく理解できませんでした。だんだん理解が追いついていかなくなってきましたが、めげずに続けようと思います。
Day 34 – Project 6, part 3
学習時間
45分
学んだこと
チャレンジパートのため、以下の課題に挑戦しました。
- 画像をタップしたときにY軸を中心に360度回転するアニメーションを追加する
- 画像をタップしたときに他の2つの画像はフェードアウトするアニメーションを追加する
- ユーザが選択しなかった2つの画像に対して別のアニメーションを追加する
感想
Project 6のチャレンジパートです。
今回は、ものすごく難しかったです。
前回までで解説されたどのアニメーションを使って実現すればいいかがよくわかりませんでした。
とりあえずはそれっぽいものが実装できましたが、もっとキレイにコードを書く方法がきっとあるはず、と思うような結果になってしまいました。
Day 35 – Milestone: Projects 4-6
学習時間
100分
学んだこと
- これまでの復習
- ForEachやListに渡せる範囲型について
- Stringを構成する文字数について
- アプリバンドルの構成について
感想
今回はProject 4からProject 6までのマイルストーンパートということでこれまでの復習と何点かのトピック、そしてチャレンジがありました。
トピックの説明に関しては、やはり今回も動画がなかったので英語を読むのが大変でした。
そしてメインのチャレンジパートですが………今回は難しくて最終的にはギブアップしてしまいました。
問題に関する設定を入力する欄は実装できたのですが、実際にその設定に従って問題を表示し、かつユーザの入力欄を作成するところがうまく実装できませんでした。
ここ2日間のチャレンジは難しいものが続いているので、少し雲行きが怪しくなってきました。このままの状態が続くとちょっと継続するのが厳しくなってしまいます。
まとめ
100 Days of SwiftUIのDay 31〜Day 35が完了しました。
チャレンジとして登場した課題がいずれも難しいものだったので、ちょっと挫折しかけています。
やはり継続するためには適度な難易度と達成感が必要だなと改めて感じています。
とはいえ、せっかくここまできたので、100日目まで到達できるように頑張って続けていきたいと思います。
今回ギブアップしてしまった課題も、後々再挑戦できたらと考えています。
以上、白くまコージでした!