Swift実践入門してみた

Posted on

普段はSwiftを書かないインフラ系エンジニアによる感想。
丁寧に読んだが、大体2週間位で読み切った。

Howではなく、WhyとWhenに着目した言語入門書

私はインフラ寄りのエンジニアで、書くコードはGoやShellやPHPが中心だ。
業務の7割はターミナルに住み着いていて、プロセスを眺めたりDatadogで各種メトリクスを見届ける時間が多い。

新しい言語について学ぶ時、高等テクニックよりも言語デザインや言語の特徴を効率良く把握したい。
新しい事を学び続けるという事はとても重要だが、それが自身にとってどれくらいの距離にあるものなのかを効率良く判断する事は重要だと思う。

そう言った観点から、この Swift実践入門 はまさに良書であったと言える。

言語を学ぶ際の基本となる、制御構文・型・エラー処理は自分にフィットするか判断する重要な要素となると思う。
特に、本書では開発者と言語のインターフェイスについて丁寧に解説されていて、すぐにその特徴と雰囲気と所作を理解する事が出来た。

なぜnil許容する・しないものがあるのか、それをいつ使うべきで使わないべきなのか、親切に導いてくれた。

実践を意識したサンプルプログラム

一定のスキルを持ちいくつかの言語をある程度触れる様になると、そもそもプログラミングについての説明はそんなに重要ではない。

たまに入門書と称して、プログラミングのイロハから説明してくれる書籍もあるが、今の私には不要だ。
タイトル通り、入門実践したい。

そんな私には、第14章が特にフィットした。
まずSwiftの雰囲気を感じたいのであれば第14章から目を通すのは効果的だ。

GitHubが公開するAPIを使うための、Web APIクライアントをCLIで作成する。
HTTPの基礎にも軽く触れながら、個人的にSwiftの面白さを感じる事の出来る「ネストされた型」「nil許容」「クロージャ」「エラー処理」などを網羅的に触れる事が出来る。

今のメイン言語であるGoと対比しながら書いたり読んだりした事で、両言語の面白さをさらに実感出来たと思う。

Swift Playgroundsの気持ちよさ

goを書き捨てると言えばThe Go Playground.

とても優秀だ。
使い勝手もよく、気軽に入門者へ言語の説明をする時には活躍する。

Swiftは Swift Playgrounds が優秀で、Macを使っていれば環境構築からコードを書き捨てるまで迷いなく進める。
言語の入門障壁が低いというのはメリットだと思う。

コンパイラを通さなくてもエラーや参照先が分かると言うのは入門者にはとても嬉しい事だと思う。


まずはSwiftを感じ、実践入門の準備をする人がいるのであれば、本書を進めるだろう。
時間を見つけて、swiftを書いてみたいと思えた良書だった。