お茶とスルメ

プログラミングに必要なもの

Javascript読書マラソン

まだ途中ですが、ちょっと距離が長いので、一休みしてます。

ここまでで読んだJavascriptの書籍について、紹介します。本屋でめくってみて、これは読む必要がないなと思ったものについても、その理由を含めて紹介したいと思います。
また、以下のリストには、プログラミングしたことない人のための初心者向け書籍は入ってません。そういった本の紹介は、ごまんとあるので、そちらを参照してください。

Javascript The good parts

これは言わずと知れた名著ですね。
内容はJavascriptの書き方の基本的な部分について、また落とし穴になりがちな言語仕様が記されています。
Javascriptプログラマであることを名乗るなら、この本に書かれていることはすべて理解しているべきだなと思います。

Javascriptパターン

デザインパターンも書かれていますが、もっと基本的なパターンについての本です。
Javascriptにあったオブジェクト指向や、その要点が書かれていて、勉強になります。ただ、デザインパターンの話は特にJavascriptで学習する必要は無いかなとは思いました。
基本的な部分でもありますが、Javascriptオブジェクト指向は、これを読んで学ぶべきかと思います。

オブジェクト指向Javascriptの原則

わざわざJavascriptで、オブジェクト指向自体を学ぶ必要はないので、本屋でめくってみて、読まないことにしました。
Javascriptオブジェクト指向は、Javascriptパターンを読んでいれば充分かなという感じです。
それにあまりJavascriptではオブジェクト指向にこだわる必要も無いかと思います。

Javascriptデザインパターン

これも、本屋でめくってみて、読まないことにしました。
デザインパターンは学ぶものではなく、一生懸命考えてたら、自然とその形に収まってたというものです。知見としてはいいかもしれません。
でも、わざわざJavascriptで学ぶ必要はないと思います。

Javascriptで学ぶ関数型プログラミング

オブジェクト指向ではなく関数型の本ですが、これも本屋でめくってみて、読まないことにしました。
Javascriptオブジェクト指向しすぎなくてもいいと思いますが、同様に関数型にしすぎなくてもいいと思っています。
Underscore.jsを紹介しながらの本らしいです。Underscore.jsは使いたいなと思っていますが、解説してもらう必要は無いかなと思います。

テスタブルJavascript

この本は実際に読んだのですが、まったく肌に合いませんでした。
Javascriptに固有のテストの特徴は、記述がとても少なく、一般的なテストの考え方に大量のページを割き、またツールの紹介が多い。ツールを学ぶなら本よりネットの記事のほうが読みやすく、探しやすく、また、本当にトレンドになっているものを見つけられるので、本で学ぶ必要は感じません。
また、一般的なテストの話なら、わざわざJavascriptじゃなくて、本当にテストのことに着目した書籍のほうがいいです。

メンテナブルJavascript

これも本屋でめくってみて、必要ないなと感じました。
メンテナンスしやすい設計の話は、あまり目新しい話が記載されてるようには見えなかったです。ツールの説明も多いのですが、ツールはわざわざ説明しなければ使えないものは、そもそも使いたくありません。

ステートフルJavascript

流行りのフレームワークの仕組みや思想がよく理解できます。
Backbone.jsなどがどういう思想で、どういうしくみになっているのか、とてもわかりやすく記載されています。Javascriptにおける理想的なオブジェクト指向はたぶんこうなんだろうなというのが、垣間見れる気がしました。
ただES2015からはクラスがあるので、もしかしたらBackbone.jsのようなライブラリの必要性は低くなってきているかも知れないなと思いました。ま、わかりませんが。
でも多くのライブラリが採用しているアーキテクチャを学べるので、この知識があればライブラリ選択の手助けになると思います。

Javascriptクックブック

本屋でめくってみて、読まないことにしました。内容はJavascriptのテクニック集で、かなりの量があります。
The good partsなどに書かれていないことも書かれていますが、踏み込んだテクニックが少ないようにも感じました。どちらかというと初心者向けという印象です。

Effective Javascript

とてもいい本です。正直言うと内容が新しいぶん、The good partsよりこっちを読むべきかもしれません。
Javascriptの書き方や、細かい言語仕様について、かゆいところに手が届く、とてもためになる本です。
絶賛したいのですが、ここは逆にちょっと残念な部分を。たぶんbindだと思うのですが、結合と訳されています。初めて見ました。bindを結合って訳すかな。カタカナでバインドが一番わかりやすいかなと思います。
それと「難しいにはワケがある」という表紙のコピー。僕はJavascriptはシンプルで簡単で扱いやすい言語だと思っています。確かにJavascriptで大規模開発をするのは難しそうですが、Javascript自体は難しいわけではないはずです。また、そもそも英語の原著にはそんなコピー書いていません。
色々と批評しましたが、Javascript The good partsと同様、Javascriptプログラマを名乗るなら、この本の内容は理解しているべきかと思います。

Nodeクックブック

node.jsの本も必要だろうと読みました。
node.jsの書籍は他にもありますが、今のところ一番踏み込んだ部分まで記載されているように感じました。内容は、node.jsでコーディングするときの、基本的なテクニック集です。node.jsで開発する前に読んでおくべきものかなと思います。



ここまでが、読んだ本、読まなかった本です。 以下の本は、これから読む予定です。

上記の本は、内容がいままで読んだ本と比べて高度そう、あるいは読むのに、理解するのに時間がかかりそうだと思いました。ゆっくり読んで行こうかなと思います。



他にもJavascriptの書籍はありますが、僕が読む必要があるなと思った書籍は以上になります。ただ、初めてプログラミングするのであれば、ここに挙げた書籍では難解すぎると思います。
また、僕は読みませんでしたが、オブジェクト指向や関数型の考え方をJavascriptで学ぶなら、そういった書籍も有用かもしれません。

Javascriptは、柔軟でとてもシンプルで簡単な言語です。好きな言語なので、今後も勉強していきたいです。