BruceEckelのJavaプログラミングマスターコース
Javaという言語をしっかりと理解したいのならば、まず一番におすすめしたい本がこの「BruceEckelのJavaプログラミングマスターコース」です。上下巻で結構なページ数もあり、なかなか読み応えがある本なので気軽に手にとっては読みにくいかもしれません。しかしページを開くと、本の外観よりも肩の力を抜いて楽しめる内容だと感じると思います。
その一例として、この本を読んで私が面白いと感じたのは「Java言語でのオブジェクトのハンドル」の説明です。オブジェクトとそのハンドルを「オブジェクトのハンドル→テレビのリモコン」、「オブジェクト→テレビ」のように例えて、オブジェクトのハンドルが持つ性質を次の様に説明していました。「テレビのリモコン」は「テレビ」を操作する為に存在する。「テレビのリモコン」に対応する「テレビ」が無ければ「テレビのリモコン」何も操作できない。「テレビのリモコン」は様々な「テレビ」に対応付けを切り替えることができる。
この説明を読んだ時は素直に、面白いし分かりやすいと感じました。Java言語のオブジェクトのハンドルを考える時には、C言語のポインタと同じものだと考えてしまい、アドレスなどを考えてしまいがちで、その為に一人で勝手に混乱してしまったりもしていました。この説明だと、C言語の経験が内人にとっても比較的混乱無くハンドルを理解できるのでは無いかと思います。他にも、この本にはこのような面白く分かりやすい説明が詰まっています。
またこの本のもう一つの特徴に、説明した内容は、きちんとプログラムで実証するということがあります。この特徴は、実証する記述があるから読み進めていて納得できるということに加えて、JavaVMの動作は自分で確認する事ができるということを読者に教えていると思います。私自身この本を読んでからは、 Javaでの設計やコーディングを行っている際に、必要に応じて、ちょっとプログラムを書いてJavaVMの動作を確認するようになりました。このことは設計やコーディングをスムーズに進める上で非常に有意義だと思います。
この本は、Java言語をしっかり理解したいプログラマーやアーキテクトに是非読んで欲しい一冊です。