パーフェクトJavaScript読んだ。

巷で話題のパーフェクトJavaScriptを読みました。サイ本と比べられて若干有名になっていますよね。

そんなパーフェクトJavaScriptの書評でも書きたいと思います。

パーフェクトJavaScriptはサイ本と比べて

発売日

違いが一番気になるところ?かな。まず、絶対的に違うのは、発売年月日。
サイ本が発売されたのは2007年に対して、パーフェクトJavaScriptが発売されたのは2011年です。

これだけでパーフェクトJavaScriptが優勢になってる気が、、
Web業界の技術の進歩は本当にすごくて、4年もあれば使われる技術が一新してしまう分野だってある?と思います。JavaScript周りの話だけでも、この4年でjQueryがライブラリとしてスタンダードになったり、HTML5の標準になるほどに進化したり、サーバサイドで書けるJavaScriptが流行ったり。他にもたくさんあると思いますが、まだWebを学び始めて2年も立ってないので深いところまでわかってねーです。

パーフェクトJavaScriptには、そのjQueryのことや、HTML5、サーバサイドのnode.jsのことが載っていたりします。サイ本にはないところですよね。
それにECMAScript5に対応しているというのが一番いいところ。サイ本だとECMAScript3までのことしか載っていません。

パーフェクトJavaScriptは実戦向き

このパーフェクトJavaScriptの一番いい(と思っている)ところなのですが、サンプルコードがたくさん載っているのです。試しながら確認できる。すごくいい。コメントもたくさん付いているので、コードもすごく読みやすいです。
サイ本は文章がすごく多いですよね。詳しく説明されている分いいのですが、さすがに読むのにすごく時間がかかります。ほぼすべてが網羅されているので、そうタカをくくってしまえばいいのですがね。
でもパーフェクトJavaScriptは説明省いてあったり、サイ本と比べたらぜんぜん初心者むきじゃありません。

思ったより読む時間がかからない

パーフェクトJavaScriptは1週間ちょいくらいで読み終わりました。500ページ以上あるし、結構時間掛かるだろうなーと思って挑んだのですが拍子抜けでした。サイ本もっとかかった思い出が、、。
と言っても、サイ本はJavaScriptを学ぶために初めて読んだ書籍なので時間かかりますよね。2012年になったらまた読み始めようかなと思っています。

読むのに時間がかからなかった理由は、おそらく先ほど書いたようにサンプルコードが多かったというのがあると思います。いろんな意味ですごく読み易かった。

パーフェクトJavaScriptのいいところ

いいところすでに上でいっぱい述べていますが、もっとたくさんいいところがあるのです。

IE対策

クロスブラウザという項目が存在するのですが、そこでもIEで使えないメソッドが網羅などされているのですが、サンプルコードのところどころでもIE対策のコードが載っていたり、
jQueryばっかし使ってクロスブラウザのJavaScriptをぜんぜん書いていなかったので、そこらへんの知識が増やせたのでかなり良かったなと思います。

最新技術が学べる

表紙にもあるように、ECMAScript5, HTML5, Node.jsなどといった、今もっともWeb業界でトレンドワードになっている技術が一気に学べます。
jsdo.itでサンプルコード打ちながら学べばイイと思いますよ!

書き方を指摘してくれる

JavaScriptを学び始めて、たくさんコードを書いてきたのですが、JavaScriptでは書いてはいけない(書かないほうがいい)コードというのが存在しますよね。
例えばeval()メソッドや、 == とか。他にもたくさんあるとおもいますが、こういう書き方を指摘してくれる書籍ってあまり無いですよね。JavaScript The Good Partsはそういうコードをたくさん紹介してくれているので、これを読んでいたのならあまり必要ないかもですが。

サンプルコードが豊富!

本当に実践向き。とくに本書のPart4以降が。API関連のこととか、知っておかなければいけない技術のサンプルコードは全部書いておいてもいいんじゃないかなと思います。

まとめ

個人的にはサイ本よりも良かったなーという印象です。もちろんサイ本にしかない情報もありますが、パーフェクトJavaScriptの方が先に読んでおきたかったと思いました。
そういえばアメリカではサイ本の第6版が発売されているみたいですね。日本で翻訳がいつ発売されるかわかりませんが、楽しみで仕方がありません。
最新のECMAScriptの言語仕様が網羅されているんでしょうね。自分が英語を問題なく読めるレベルだったら即効で原書を買うのですが、、、