Swift実践入門を読んだ。
Swift が発表された時には、ドキュメントをダウンロードしたり、 トレンドなどを追っていたのだが、Swift 2.0 あたりからあまりキャッチアップできていなかったので、 これを機にまた勉強してみようと思い、購入してみた。
読んだ感想としては、基本的な部分から丁寧に説明しているので、Swift 初心者でも読めるのではないかと思った。また、 Swift 自体は、言語仕様が当初に比べると複雑になっているなという印象を持った。 これは別に悪い意味ではなく、protocol extension などあったら便利だなと思えるような言語仕様も増えているので着実に良くなっているなと思った。 ただ、Result 型は言語の標準機能として用意されていないようで、自作するか、サードパティー製のものを使用するようだ。 この辺は次のバージョンで追加されたりするのだろうか?
あと、Swift には class と struct があるのだが、どう使い分けるかはずっと疑問だったのだが、 (以前は基本的には class を使えばいいのかな?と思っていた。) この本では基本的には struct を使った方が良いみたいなことが記述されていて、その理由も記述されていて基本的には納得なのだが、ただ常に、class なのか struct なのかを意識しないといけなさそうなので、面倒ではないのかなと思った。 また、struct は参照型ではなく、コピーなので、これを多用することは、他の言語に慣れている人から見るとかなり、違和感のある動作をするかとも思った。 実際にプロダクションで使用している人はこの辺はどんな感想を持っているのか気になった。
また、言語仕様の説明の後に、実際に GitHub の CLI を作る章があることも良かった。 言語仕様はなんとなくわかったが、実際作る際はどのようなことに気をつけて行けば良いかがツールを作成することを通して説明されていたので、実践的で良かった。
最近のSwift の言語仕様がざっくりと学べる点は非常に良かったが、一つ注意点があるとすれば この本を読んだとしても、UIKit の説明はないので、iOS などアプリをかけるようになるわけではないので、その点だけは注意が必要かも。 ただ、自分みたいに最近の Swift が追えていなかったり、これから勉強してみようと思う方にはオススメです。