Swiftで戸惑う箇所が有るとしたら「Optional」でしょうか? 変数にnilを代入可能なら「?」を付けて明示します。逆にnilでないことを明示する「!」もあり、適当にサバクとコンパイル時にエラーが出まくります(笑)。nilの代入を意識付けし、アプリ実行時の致命的なエラーを減らすのには有効ですが、nilのままでもコンパイルエラーを回避する表記もできるわけで、意味を理解せずに使うと逆効果かもしれません。昔から、そうした点をちゃんと理解&意識してプログラミングしてきた人にとっては…
正直「うっとうしい!」と感じたりします(笑)
メモリの確保と解放などもそうですが「何故こうなったの?」を理解して用いる事が重要でしょうね…。