【Swift】Optional「?」「!」初心者向は、まずこう覚えましょう

初心者がよく悩む Tips!

Swift を学び始めて苦労するのが ? と ! の扱い方だと思います。
多くのサイトにて詳しい説明がありますが、プログラムの初心者にとって始めは苦労するのではないでしょうか?最初はこう理解すればいいよ的な説明をしたいと思います。徐々にプログラムの知識が向上したら後に正確に必ず理解覚しましょう。ここで躓いてプログラムを諦めないための初心者向け Tips になります。

まず通常、特別理由がない場合は ?も!も付けません。
バグ、クラッシュを避ける為、可能な限りこちらで実装します。

特に理由がない限り必ず初期化時に値を代入しましょう。

次にどうしても nil を代入したい場合に?を付けましょう。
後から nil を代入したい場合も同様です。

ただし、?をつけた場合は呼び出し時に nil を必ずチェックすることになります。

次に上記での nil チェックをどうしても行いたくないことがある場合は ! を利用します。

ただし、コンパイルは可能ですが、実行時に変数が nil であった場合、アプリが落ちますので注意してください。

最後に

上記の順番にて実装することで文法的に悩まず、バグ、クラッシュを最小限に抑えることができます。ただ、プログラムは多種多様なので、確率的に初心者の作成したプログラムが正常に動く可能性が高いと思った方が良いでしょう。

こちらを参考に可能な限り?と!を利用せず実装しましょう。
プログラマの腕が上がるにつれて使い分けを理解できるようになります。

諦めずにプログラムを完成させることがまずは重要だと思います。なれたら正確に文法等を必ず覚えましょう。