カバーしている内容のページ数などを比較して独断の星取り表作ってみました。
どれも良い本で、△だからといって内容が悪いとかじゃないです
(割いてるページ数が他と比べて少ないとかサンプル少ないとか、その程度)。記述がない部分はハイフン。
好みや見落としもあるので、ホント参考までに。
| A | B | C | |
| 説明の長さ | 過多 700P | 適 300P | 適 200P |
| GettingStart | △ | ◎ | ○ |
| ストーリー/読みやすさ | △ | ◎ | ◎ |
| 文法 | ◎ | △ | △ |
| Collections | ◎ | ○ | ○ |
| Class/Trait/Type | ◎ | ◎ | ○ |
| 関数/クロージャ | ○ | ○ | ○ |
| パターンマッチ | △ | ◎ | ○ |
| Actor/平行性 | ◎ | ◎ | ○ |
| implicit conversion | ◎ | △ | △ |
| XML | ◎ | ○ | △ |
| パーザーコンビネータ | ◎ | ◎ | - |
| Javaとの接続 | - | - | ◎ |
| JDBC | - | ○ | - |
| TDD/ユニットテスト | ○ | ○ | ◎ |
| GUI | ○ | - | ○ |
| 使いどころ/チーム構成の議論 | - | ◎ | ○ |
「B」は後発なのとLift frameworkの作者だけあって、ベストプラクティスな印象です。例えば、他の書籍では「疲れた頃に登場」するOption[T]やfoldLeftの使いこなし方が、序盤で出てきます。
「おおっなんか、すからっぽい」という感じにすぐ浸れる。
「A」は決定版に間違いなさそうですが、日本語翻訳が出ているとはいえ、分厚くてJavaやRubyができる人には回りくどい説明が多い感じ。「ちょっとScalaやってみようかな」という人にはツラいかも。
(クラスとは!とか、いちいち重たい・・w)
「C」は薄いですが、ハンズオン形式で進んでいく上に、PCが無くても読み進められる感じ。Javaをやってる人へのメッセージが多いので、Java使いがScalaやるにはオススメ。あと表紙がモテ属性。
"ストーリー/読みやすさ"という項目では、
例えば「B」の章タイトルには
Collections and the Joy of Immutability
なんてのがあって、おっ、なんか面白そう!という気持ちになれる。文法の説明というよりは、章のテーマがはっきりしてる感じです。
文法書「A」で挫折した人や文法わかってもなかなか手が動かせない人には、実践書の「B」がかなりオススメです(←この一言がいいたかった)。
Scalaでは目玉の一つと思われるimplicit conversionについては、どの書籍も大してページ割いてないんですね。「実業務じゃ使わねーよ」ってことかも。
あとは、どういう場面でScala使っていくか、とか、チームビルディングのヒントなどが言及され始めたのが興味深いです。
文法を網羅したければ「A」、
Scalaっぽさをサクッと身につけるには「B」、
電車とかでオシャレに読書するには「C」がいいようです。
※他、オライリー本が出るみたいですね。
→ Web版みれます。後発としての魅力があるでしょうかねー。