これからJavaを勉強する人が読むと良い本
かなり主観はいっています。もしかしてオブジェクト指向は軽く理解していることが前提になっているかもしれません。
入門編
パーフェクトJava
Javaの基本を一通り勉強したいならこれ。「やさしいJava」とか読んでも使い物になりません。
一通り説明している上に個々の説明が詳細なので(例えばjava.util.Listの実装クラスは内部がこういう構造だからこういうときにはこれを使うとか)、
基礎作りに最適。
Effective Java
Javaのコードを書く上で最低限知っておかなければ行けないことが詳細に書かれています。この本のアンチパターンとして紹介されているコードを書くとぷぎゃーっとされても仕方なし。これを読んでいない人はモグリと言っても過言ではない。
マルチスレッド編
Java並行処理プログラミング
Javaをやっていたら必ずマルチスレッドなプログラムに関わると言っていいと思います。スレッドなんて自分で作らないから関係ないぜって思っている人、多分気づかずにスレッドアンセーフなプログラムを書いているでしょう。スレッドセーフなプログラムを書くには、java.util.concurrentパッケージを使ってうまく並行処理を書くにはどうすればいいかを学べます。フレームワークとか作る人は必修。
Java言語で学ぶデザインパターン入門 マルチスレッド編
「Java並行処理プログラミング」の敷居が高い場合はこっちから入るといいです。ただし、java.util.concurrentパッケージを使っていないし、書き方が少し古いのでコードはあんまりまねない方がいいかもです。
デザインパターン編
有名な結城本
とみせかけ、この本はそれほどおすすめしません。コードが古いし、いまいちこのパターンがなんのために、どういう場面で必要となるのかわからないので。
個人的には全てのデザインパターンを一つずつ学ぶより、実際にどういうときにどういうパターンが使われるかを学んだ方が実践的で良いと思います。ので、以下2冊
Javaフレームワーク開発入門
フレームワークを作るためにはどういうパターンが必要かを学び、実際にフレームワークを作る形でデザインパターンを学べます。
ソースコードリーディングから学ぶ Javaの設計と実装
こっちは反対に現存の有名どころのプロダクト(Struts, Spring, JUnit, Tomcat, Commons Loggingなど)がどういうパターンを使っているかを学べます(必ずしもGoFのパターンとは限らないですが)。
Spring編
Springは良い日本語書籍はありません。。
Pro Spring 3
出ましたSpring3本の決定版!1000ページ近くあり、かなりのボリュームですが、 その分、かなり網羅されています。3.1系で説明されており、3.1の機能もふまえた上で 最適な使用方法を選んでいる等、サンプルも鮮麗されています。
Blogアプリケーションを作りながら学ぶことで一通り身につけられるのではないでしょうか。
Pro Spring Mvc: With Web Flow
まだα版ですが、一応紹介。Spring MVCとWeb Flowにしぼって重点的に説明された本。プロジェクトが成長する中でどのようにアプリ設計すべきかまで言及しており、Spring MVCを利用する上でかなり参考になる本。3.1系。
ビルドツールにGradleを使って説明している等、自分もまだついていけてない、、
Pro Spring 2.5→Deprecated
Springの多くの機能が説明されており、一通り学ぶのに向いています。ただし、対応バージョンが2.5と古いので3系を使いたい場合は別の本も用意すべきです。
Spring in Action→Deprecated
Spring3系の本は執筆時期によってサンプルの書き方が結構違っています。(新しい方がより設定レスです。)時にSpringMVC周り(3.0.4からちょっとよくなったりしているので)。
その中でもSpring in Actionは新しい書き方できれいです。ただし、紹介されているSpringの機能は少なめです。
Spring Recipes→Deprecated
Spring3系でも紹介されている機能が多めです。ただし、一部設定の仕方が古い書き方がみられます。(JSONを返却する方法とか)
SpringによるWebアプリケーションスーパーサンプル→Deprecated
強いて日本語版をあげるならこれかな。珍しいSpring3系の日本語書籍(ただし3.0.2と若干古め)。一つのアプリケーションを通しで作る点は○。ただし、もっと簡単にかけますから!と突っ込みどころ多数なので、この本のサンプルをより簡潔な書き方で書き直して作るという読み方が勉強になると思います。間違ってもこの本に書いてあることがSpringの全てだと思わないように。
JavaEE編
Beginning Java EE 6 GlassFish 3で始めるエンタープライズJava
ようやく出ました、JavaEE6の和書。JavaEEの主要技術である JPA、EJB、JSF、JMS、JAX-WS、JAX-RSを一通り学べる本。 自分も翻訳・監訳に携わりました。
読み返して残念なのはやはりCDIについての説明がないこと。CDIがあればアプリケーションの書き方も変わってくるので、JavaEE6を普及していく上で、説明がないのはかなり痛いと思われます。(付録のハンズオンラボでは空気読まず使っていますが、、)
Struts編
ボクStrutsカケマセンwww
が、一応紹介Struts1系であれば以下かな
StrutsによるWebアプリケーションスーパーサンプル→Deprecated
会社の都合で枯れたStruts1.2系を使い続けている場合は第2版をどうぞ。
Seasar編
一応あげておきます。Seasar以外にも学べる所は多いので、Seasarを本格的に使わなくても持っておく価値はあると思います。
(jstlやstrutsのタグリファレンスが地味に使えたりw)
ライブラリ編
現場で使えるJavaライブラリ
Javaはライブラリが多い一方で機能が似たものが多かったり、開発が止まっているようなものも多かったりすてどれを選択していいのか分からないことがある。この本では今使えるものをジャンル毎に分けてサンプルコード付きで解説してくれている。何かやりたいことがあって、マッチするものを探すという使い方もできるし、パラパラっとみて今後できることのストックを増やすという使い方もできる。
(個人的にはJSONのライブラリはJacksonにしてほしかったなw)
コーディング規約編
Javaルールブック ~読みやすく効率的なコードの原則
いっていることが全てうんうんとうなずける。全開発者が一冊もつべき。
思いついたら追記します。ご意見等があれば@makingまで
| 更新日 | 更新内容 |
|---|---|
| 2012/05/16 | ・今更「StrutsによるWebアプリケーションスーパーサンプル」を追加 ・「Pro Spring3」、「Pro Spring Mvc: With Web Flow」、「Beginning Java EE 6 GlassFish 3で始めるエンタープライズJava」を追加 ・「Pro Spring2.5」、「Spring in Action」、「Spring Recipes」、「SpringによるWebアプリケーションスーパーサンプル」をDeprecatedに |
| 2011/07/29 | 「現場で使えるJavaライブラリ」追加。 |
Created at : 2011-04-27 00:53:10 Updated at : 2012-05-16 02:50:33
Category : Book::Programming::Java
Tweet


















