はじめに
こんにちは、id:FM_Harmonyです。
Rakus Developers Blogでは約一年振りの投稿になります。
さて、今年から楽楽精算のスマートフォンアプリ開発に携わることとなり、業務知識としてSwiftを学習しています。 そこで、今回はSwiftのいいなと思った箇所について、簡単にまとめてみました。
これからSwiftの学習を始める方に、Swiftの良さが伝えられれば幸いです。
いいところ①:型推論
Swiftは静的型付け言語ですが、型推論を持っています。
そのため、変数宣言時は定数かどうかのみを意識すればよく、簡潔なコードを書くことができます。
var n = 1 print(type(of:n)) // → Int
いいところ②:nullの取り扱い
Swiftでは、変数にnull(nil)を代入するためには、Optional型として宣言する必要があります。
// var m = nil → コンパイルエラー var n:Int? = nil print(type(of: n)) // Optional<Int>
Optional型はアンラップしなければ利用できないため、nullかもしれない値を安全に利用することができます。
アンラップする方法の一つに、if - let
構文があります。
var n:Int? = 1 print(n) // Optional(1) // n += 1 → コンパイルエラー if let m = n { print(m) // 1 m += 1 }
また、guard - else
構文により、Optionalの値がnullだった場合はリターンし、そうでない場合はアンラップした値を変数に代入する、といったこともできます。
guard let n = hoge() else { return } print(n) // → hoge()の戻り値がnilでなければ、その戻り値を表示する
guard - else
構文では、複数の変数に代入することもできます。
guard let m = hoge(), let n = fuga() else { return } print(m) print(n) // ↑ hoge()、fuga()の戻り値がnilでなければ、その戻り値を表示する
いいところ③:文字列補完
文字列リテラルに、\(変数)
という形で変数の値を埋め込むことができます。
変数の値と文字列リテラルの結合もできるのですが、文字列補完を利用した方が簡潔なコードを書くことができます。
let year = 2020 let month = 6 let day = 24 print("\(year)年\(month)月\(day)日") // 2020年6月24日
おわりに
いかがでしたでしょうか。
Swiftを使うことで、簡潔かつ安全なコードを書けるということが伝えられていれば幸いです。
他にも、extensionやprotocol、クロージャというように、過去の記事で紹介されている文法があります。
tech-blog.rakus.co.jp tech-blog.rakus.co.jp
そういったものについても今後理解を深めていき、スマートフォンアプリの機能開発に活かせればと思います。