swiftを触ってみる
普段はRubyを使っておりますが、型のある言語も触っておいたほうがいいという話を何度か見たり聞いたりしたことがあり、型のある言語を触ってみたいと思っておりました。
型のある言語だと、go、typescript、java、swift、elixirなど気になっている言語がたくさんありますが、業務ですこーーしだけ触ったことのあるswiftについて基本的な部分を学んでみようと思いました!!
swift概要
静的型付け言語です。プログラム実行前にコンパイルされるときに変数や定数の型が決定されます。
型推論があるため、型を宣言しなくても自動的に決定されます。
Xcode上で動き、主にiOSアプリを作るために使われます。
型の種類
Bool、Int、Float、Double、Character、String、Array、Dictionary、Nil、Optionalなどの型があります。
swiftには型推論があるため、変数の宣言と同時に値を代入する場合型を宣言しなくても良いようです。(といっても型のある言語にほとんど触れたことない自分には普通なことに感じてしまう。。。)
型を宣言する場合には以下のように宣言します。
var age:int
age = 20
swiftを触ってみる
Playgroundを使おうと思ったのですが、自分のPCはメモリが足りないのか、Playgroundがたまに固まってしまいますw
なのでターミナルからswiftコマンドを実行してREPLを起動して行いました。
:qで通常のターミナルに戻ります。
- 変数を宣言してその変数を出力してみる
rubyのputsのように、文の最後に改行を入れてくれているようです。
var str = “hello world”
print(str)
print(str)
=>
- 普通のエディタのように宣言されていない変数があると教えてくれます
var str = “hello world”
name
print(str)
=>
Playground execution failed:
error: MyPlayground.playground:1:1: error: use of unresolved identifier 'name'
name
^~~~
- Rubyのようにprintに直接文字列を渡しても良いみたいです
print(“hayashi”)
=>
hayashi
- ループ処理
ループ処理はforかwhileで書くようです。
rubyだとeachばかり使っているから慣れておりませんw
for文
let arry = ["hi", "hello", "wow"]
for str in arry {
print(str)
}
=>
hi
hello
wow
while文
var num = 1
while num < 100 {
if num % 15 == 0 {
print("fizzbuzz")
} else if num % 5 == 0 {
print("buzz")
} else if num % 3 == 0 {
print("fizz")
} else {
print(num)
}
num += 1
}
感想その他
サーバーサイドはRails、アプリ部分をswiftで作るということが多いのかなと思うので、そのやり方についても今後調べて試していこうと思います!!