【Swift 5】 Breakpointで変数を確認 UserDefaultsで変数を保存し取り出す | Apple iOS 開発 YouTube セミナー 3

Catch Questionsアカデミー第3回

Swift5.1 Xcode11.1 Storyboard


-BreakpointとPrintで変数の確認

-デバッグエリアの活用

-UserDefaultsで変数を保存し再取得


数学の変数とプログラミングの変数は意味合い違う

 

「以下は動画のハイライトです」

iPhone アプリで使われる変数について解説します。

とその前にBreakpointとPrintについて少しだけ動きをおさらいしましょう。 この二つは開発に不可欠なデバッグ機能となります。 プログラムはちょうど上からドミノ倒しのように下へ進みます。あるところで止めてちょっと動き方を確認したい時はBreakpointを使います。一方、Printはその名の通り、変数などを吐き出して今変数に入力されているのはどんな値か出力してくれます。

変数とはその名の通り変わることのある値のことですがSwiftでは変数として用いる文字列の直前にこれは変数ですと宣言するためのvar というものを記載します。 var hensuu とすることでhensuu が変数となります。


hensuu = 1

hensuu = 2

hensuu = 3


と記載すると最後に入力する3がhensuu の最終値になります。数学的にはあり得ない約束事ですがプログラム的には上から順番に決めていく性質がありますので、下の方で決めるものほど新しく、更新された値が反映されます。 一方、このように一回決めたら値を動かさないいわゆる定数的な使い方としては宣言にletを使用します。

ちなみに let teisuu = 1 としたらもう変えることができません。 teisuu = 2 と記載した時点でプログラム的におかしいと判断されそこでエラーとなりプログラムは止まります。

ただこうした値はiPhone では非常に短命でアプリが起動してから終了するまでしか命がありません。よくアプリが落ちたとか経験するかと思いますが、落ちることでまず消えるものがこうした変数です。

#変数の2行目で止める hensuuに3が入力されているこのアプリを止めて再起動してみましょう。 3が入力されたはずなのに再起動すると1の入力した時点で止まっていることがわかります。

これぞアプリが落ちると最初からやり直しを再現した映像となります。 ただ、アプリが死んでもこれが本題のUserDefaultsです。 文法がやや難しいですがコピペしてすぐ使えるようにメモでもしておきましょう。 早速これを記載してアプリを再起動します。 アプリを落としても変数は消えることはなく使うことができますね。こうした値にはセーブデータとして様々なユーザー情報の記録に応用して使うことができます。

ソースコードはYouTubeのコメント欄に記載します。

目次へ戻る


2019年10月20日