Elixir の定番の入門書「Programming Elixir」ですが、Elixir 1.2 対応版が、おととい(2016年3月8日)発売されました。
-
Programming Elixir 1.2
Functional |> Concurrent |> Pragmatic |> Fun
by Dave Thomas
旧版は Elixir 1.0 ベースだったので、どこが更新されたか、ざっと見比べてみました。
クーポンが届いていないか要チェック
ちなみに私は、昨年、旧版の eBook 版(PDF, epub, Kindle mobiに対応)を、出版社 The Pragmatic Bookstore のオンラインストアから直接購入していました。そして今年の1月に、新版の eBook 版が100%オフになるクーポンをメールで受け取りました。そんなわけで、発売を楽しみにしていたのでした。(Qiita で宣伝しているのは、クーポンのお礼みたいなものです)
> Subject: [Pragmatic Bookstore] New Coupon!
> Date: Tue, 05 Jan 2016 04:30:41 +0000
> From: The Pragmatic Bookstore <support@pragprog.com>
> To: tatsuya@******.org
>
> Dear Tatsuya Kawano,
>
> You have a new Pragmatic Bookshelf coupon worth 100% off.
>
> Save 100% when you purchase "Programming Elixir 1.2 (eBook)"
> because you already own "Programming Elixir (eBook)".
>
> You can redeem your coupons by visiting your Bookshelf Homepage.
>
> Or begin shopping with your new coupon by visiting the store at
> http://pragprog.com/redeem/******************
Pragmatic Bookstore から直接購入した人は、クーポンが届いてないか、メールボックスをよく確認してくださいね!
アップデート1: with
スペシャルフォームの解説
全体の構成は旧版と変わっていません。PDF版(印刷版と同じレイアウト)のページ数は、旧版 323ページ、新版 335ページと少しだけ増えています。章立ては上の「Programming Elixir 1.2」のリンク先で確認できます。
第4章 Elixir Basics の Variable Scope の節に、with
スペシャルフォームの解説とちょっとした注意点が、さらっと3ページほど追加されています。内容としては、多すぎず少なすぎず、妥当かなというところです。
アップデート2:Elixir リリースマネージャー EXRM の解説を追加
第18章 OTP Applications に EXRM -- the Elixir Release Manager の節が追加されました。約9ページに渡って解説しています。
ここでは簡単なサンプルアプリを使って、一連の手順を紹介しています。アプリの初回リリース、アップグレード、アプリのバグをサービス無停止で修正する「ホットデプロイ」などが含まれており、なかなかいい感じです。
アップデート3:非推奨のコレクションに関する記述を削除
Elixir 1.2 では、Erlang/OTP 18 が必須となったことに合わせて、一部のコレクションが非推奨になりました(参考)。そのため、第8章から、非推奨の HashDicts
と Dict
ビヘイビアの解説が削除されました。
- 旧版の第8章:Dictionaries: Maps, HashDicts, Keywords, Sets, and Structs
- 新版の第8章:Maps, Keyword Lists, Sets, and Structs
まとめ
残りの部分は特に違いは見られず、全体として地味なアップデートです。もし旧版を買ったばかりで、クーポンもないようだったら、無理して新版を買う必要はないかもしれません。
もし旧版を持っていないなら、英語という問題はありますが、個人的にはお薦めの本です。Elixir 言語、主なライブラリ、OTPデザイン原則、ツール類のエコシステムといった、Elixir で開発するのに必要な基礎知識全体をカバーしています。オンラインストアの書籍目次で「excerpt」と書かれた章は、PDF形式でダウンロードできます。もし購入について悩んでいたら、それらの章を読んでみることをお勧めします。
なお、この本には、Phoenix フレームワークの解説はありません。これについては、José Valimらによる 別の本 が、今年4月に発売される予定です。(現在ベータ版が購入可能です。私は持っていませんが)