"たのしいSwiftプログラミング"を読んだ話

tanoshii_swift

2014年にAppleが発表したiOS及びOSXのアプリケーションを開発するための新プログラミング言語「Swift」。従来のObjective-Cとの共存性も持ち合わせている一方で、今後のiOSアプリ開発に広く用いられることが予感されます。

本屋ではSwiftに関する書籍を沢山目にするようになりました。僕がざっと見た感じではSwiftそのものの文法的なそれを解説しているものが多いかな、と思うのだけど、この本はiOSアプリ開発までを解説しています。もちろんSwiftの文法も入ってます。

PlaygroundでSwiftを体験する

Swiftでの、というか、Objective-Cでもそうだけど、iOSアプリの開発にはMacのXcodeというアプリケーションが必須となっていて、今回、Swiftを始めるにあたり、XcodeのPlaygroundというツールが大活躍します。

playground

Playgroundはその名の通り「遊び場」で、記述したコードをインタラクティブに実行し、結果が得られるというツールです。ちょっとした文法の確認から多少複雑なコーディングでも実行可能です。

本書では、四則演算、グラフの描画や文字列の操作、Web上の画像の表示など、あらゆることをPlaygroundで学びます。

Swiftの文法

Playgroundで遊びがてら文法を学んでいくスタイルなので、実践を伴って読み進めることができます。結局、文法事項を頭に叩き込んでいっても忘れてしまうので、こうして実際に書いていくことが大切だな、と。

特に、クロージャやオプショナル型とかは何度も反芻したり、様々なパターンを見ていかないと理解できない...。

iOSアプリの開発

Hello WorldならぬHello Swift

4章からいよいよiOSアプリの開発に入ります。まずはXcodeの解説があり、基本的なアプリ開発の流れに沿ってお馴染みのHello World(本書内ではHello Swiftだった気がする)の出力を行います。

サンプルアプリ「Swift News」

5章から9章まででサンプルアプリ「Swift News」の開発を行い、ひとつのアプリを通して基本的な機構の習得を目指します。以下のような感じです。

  • テーブル
  • ネットワーク
  • XMLとJSONの解析
  • SNSとの連携
  • その他

もちろん、これらだけでは世の中で活躍しているようなアプリには到底及ばないけど、基本中の基本であり、あらゆるアプリで使われている内容でもあると思います。

swiftNews

iOS8.1 & Xcode6.1への対応

本書が発売開始された時点では、iOS8とXcode6というバージョンで、その後マイナーバージョンアップが行われたのだけど、そこでSwiftの文法にも変更が加えられたみたいです。それにより、サンプルコードの所々で動かないことがあります。

ですが、本書は正誤表を出しているため、多くはこれを参考にして動くコードに書き換えることが可能です。

さらに、おすすめなのは【電子版】です。リンクは以下から。

【有料版】は紙の書籍が電子化されたもので、【無料版】は1章まで無料で課金すれば有料版と同じものが読めるというものです。しかも嬉しいことに、紙の書籍を購入した人は無料版からライセンスコードを発行することで、無料で電子版を入手できるのです。

電子版は内容が更新されていくだけでなく、アプリ内の動画で実際の動きを確認することもできるので大変便利です。価格も紙より格段に安いはず。

技術書の電子書籍化の先駆け

技術書はその他のジャンルの書籍と比べると、その内容の風化が早いと感じています。プログラミング言語に関するものは特に顕著で、今回のようにバージョンアップによって全く使えなくなってしまうことも少なくないです。

その点をカバーするには初版、第二版、第三版...と更新していくのが有効だけど、紙の書籍で買い続けるわけにはいかないので、電子書籍アプリによるアップデートで内容の更新が可能というのは斬新だな、と。動画も初心者には有難い。

著者にかかる負担は増えるだろうから一概に言えない部分はあるかもしれないけど、こういった書籍が増えていくと技術の風化に対応できることは間違いないかな、と思います。