May 18, 2006

Javaでなぜつくるのか


Javaでなぜつくるのか 知っておきたいJavaプログラミングの基礎知識

キーワード:
 Java、JVM、オブジェクト指向プログラミング、メモリー管理、J2EE、J2ME、オープンテクノロジー
日系BP社のなぜシリーズ第6弾。

Javaの本。Javaとは「どうなっているか」を解説し、さらにそれがなぜそうなっているのかを解説することで、結果的にJavaはなぜすごいのか?という問いに答えてくれる本。

大まかな4部構成のようになっていて、最初は導入としてJavaの魅力について述べられ、次にJavaの動作部分であるJVM、さらに発展してオブジェクト指向とメモリー管理について、最後はJavaがどのように発展してきたかというJavaを取り巻く環境について書かれている。

JVM(Java Virtual Machine)の部分は、Javaの移植性の高さ、つまり『Write Once, Run Anywhere』の根本的な仕組みが述べられている。Java以前のプログラム言語ではどのような不都合があったか、そこでJavaはどのようにそれを克服してきたかが書かれている。なんとなく曖昧だったJVMの基幹部分が理解できてよかった。

オブジェクト指向についてはJavaが純粋なオブジェクト指向言語であることのメリットをC++と対比させながら解説し、またメモリー管理については、Javaはどのようにメモリーリークを防いでいるかというようなことがC言語のポインタと比較しながら述べられている。ここは結構勉強になった。以前にC言語をやったことがあり、Javaのどこがよいのかいまいち分かっていなかったので、そうだったのか!!と少し感心した。ポインタの話が出てくるので、ポインタが分からないと意味不明な章になる恐れがある・・・。

最後のJavaを取り巻く環境は、JavaがスタンドアロンのアプリケーションからWeb系に進化していく様子が書かれている。つまり、サーブレット、JSP、JSF、J2EE、EJBなどの特徴を簡単に説明している。ここも、いろいろなAPIがあるんだなという概要がわかってよかった。正直、Javaを学び始める前は、種類が多くて分けが分からなかったから。

あとがきで著者が書いているように、この本はプログラミング入門書ではないのでプログラムは学べないとある。また、Javaの3要素である、継承、カプセル化、ポリモーフィズムなどは簡単に説明しているだけである。

この本のを読むための前提知識として、オブジェクト指向的な理解、もしくはJavaのプログラミングに触れたことがある、またメモリーなどハードウェアよりの部分が分かっている必要がある。そのためこの本のシリーズの『プログラムはなぜ動くのか ― 知っておきたいプログラミングの基礎知識』、『オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―』などを読んでおいたほうがより理解が深まると思われる。

全体的にさまざまなことを網羅しようとしているので、用語などあまり説明されていない部分があるように思えた。また、個人的に説明のための図が見ただけで分かりにくい気がした。自分だけかもしれないけど・・・・。

Javaってなんで使われていて、すごいのかよくわからなかったら勉強になった。特にC言語のポインタと比較している部分とJavaというのは単純なプログラミング言語ではなく、1つの大きな環境なんだということが分かってよかった。

読むべき人:
 Javaのすごさがいまいち分からない、new演算子の内部的な仕組みを知りたい、ガベージコレクション???と思う人、Javaの種類の概要を知りたい人



トラックバックURL

トラックバック一覧

1. 続・Java言語について  [ しらべもの ]   July 10, 2006 22:28

先日 「Java言語について」のエントリでJavaを腐してみたわけだが、この本に答えは見つけられるだろうか…。 Javaでなぜつくるのか 知っておきたいJavaプログラミングの基礎知識 米持 幸寿 結局、ろくでもないけどほかに比べればマシだから、てことなんだろうか...

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星