【本の感想】

『C/C++プログラマのJava入門』

 「おいおい、Delphiに熱を上げていると思ったらこの間はSQLで、今度はJavaかい!」というツッコミを自分で自分に入れたくもなってしまうが、まあ買っちゃったものは仕方がないし、読んじゃったものも仕方がない。実際にプログラムを組むようになるのはいつになるやら判らないが、まあかじっておいて害になるものでもあるまい。JBuilderもとりあえずインストールしてみたことだし。(って、それが理由かい!)

 本書はタイトルの通り、CまたはC++を知っている読者を対象にしたJavaの入門書である。ただし、CやC++を完璧にマスターしていないと読めないというわけではなく、それらについても必要なところは復習という形で補足してあるので、一応CかC++でプログラムを組んだことがあるというくらいで大丈夫だ。とくにJavaにおけるOOPの基礎を解説する章ではCプログラマ向けとC++プログラマ向けに分けて丁寧に書いてあり、OOPにあまり馴染んでいない読者でも戸惑うことがないようになっている。
 さて、本書を通しての解説の印象はというと、これがはっきり言って「くどい」。一つの段落の中で同じ内容を言葉を変えて繰り返すということも多いし、それがまた後になって繰り返されたりもする。プログラム例のリストもまとめて掲載してあるだけでなく、解説の中で参照する時にはその都度必要な部分が再度引用される。わかりきったことが繰り返されることが多いので読んでいてじれったくなることもあるが、それでもこの「くどさ」は見方によっては長所とも言える。同じ内容が違う言葉で繰り返されているのを読んで、初めてその内容にピンと来るということはよくあるし、書いてある内容が一発で完全に理解できなくても、後でまた必要になったらその都度書いてあると思えば安心して読み進むことが出来る。プログラムリストが逐一引用されているのも、その都度前のページに戻ってリストを参照するというような手間が省けて、思考の中断も防げる。要するに、こういった「くどさ」は「丁寧さ」と見ることも出来て、それは本を最初から順番にじっくりと読むような読み方をするにあたっては、有り難いことだと言えるだろう。私はどちらかというとどんな本でも最初からじっくり読む方なので、本書の書き方は有効だったらしく、非常に解りやすく感じた。
 ただし、それが完全に機能したのは前半のJavaの文法を解説してある部分までで、後半の標準クラスライブラリ(API?)の解説には不満を感じた。Javaの文法は至ってシンプルで、それを理解するには文法そのものよりもむしろOOPの考え方やクラスの概念を理解することの方が肝要なので、その部分では本書の噛んで含めるような解説が効果を発揮している。しかし、ライブラリの解説も全く同じような調子で書かれているため、こちらではかなり無理が出ているように思える。ライブラリの解説はそもそも情報量が膨大になるため、本書のような入門書では全てを解説するというわけには行かず、おのずと基礎的な部分やよく使われる部分のみを解説することになるのだが、それを一つ一つくどくどとやられるのはいただけない。鳥瞰的な把握と基礎的な考え方を手っ取り早く得て、その上でよく使われる部分の具体的な使い方を例の意味も含めて試し、あとはリファレンスマニュアル的な本を買って来れば活用できるという態勢を作る、というようなことを私としては望みたいのだが、どうも本書の後半部分はそうなっていない。単に、よく使われるクラスのよく使われる部分の基本的な使用例を、あまり系統立っていないやり方で羅列しているだけのような印象がある。ただし、その解説は相変わらずくどいほどに丁寧だ。この場合にはそれが却って情報量を減らすばかりでさしたる効果を上げてないように私には思える。ただ、純粋にCの経験しかなくOOPの考え方に全く馴染みがないという読者にとっては、クラスそのものの使い方に慣れるための丁寧な実例として役に立つのかもしれないとは思うのだが。それにしても、ラスト近くのJavaアプリケーションの作り方の解説などはもう完全に理屈無用で、一つの単純な例を手順に従って追っているだけになっている。本書の著者は前半部分を書いただけで疲れてしまったのではないかと、首をひねってしまうのだ。

 とりえあず、「C/C++プログラマ」である私が本書によってとてもやさしくJavaに入門出来たことは確かだ。
 しかし、Java APIについてもう少し知るために、リファレンスマニュアルの他に解説書をもう一冊買って来なければならないかもしれない。

1997/12/02
『C/C++プログラマのJava入門』
ダン・パークス・シドー 著
スリーエーシステムズ 訳
日経BP社

to TopPage E-Mail