なぜ、あなたはJavaでオブジェクト指向開発ができないのか―Javaの壁を克服する実践トレーニング 小森裕介


全くjavaやんないんだけど、どっかでオススメという記事を読んで買ってみた。
はいいが、なんとなく読まないで2年ほど寝かしちゃってました。
時間ができたので1日で読んでみた。


「本書が目指すもの(はじめに)」にあるように

本質の理解 :オブジェクト指向の考え方を、短期間で本質的に理解する
実践力の習得:オブジェクト指向を使って、ゼロからプログラムを作成する力を身につける

オブジェクト指向が理解できて、なおかつ書けるようになっちゃう本
のようだ。
ようだ、と書いたのは私がjavaやらないから、
自分で書くとこは端折って読んじゃったから。



でもすごくオヌヌメな1冊。
interface、abstractなど実際の使用例を具体的に述べてくれてるので
java初めてやる人にはすごくいいかも。
文法うんぬんの前に読む方がいい。


でもjavaな人に限らずこれからオブジェクト指向に携わる人なら
理解の助けになること間違い無し。



簡単なジャンケンプログラムの実装から始まり、
オブジェクト指向を取り入れると仕様変更を柔軟に行えたり
継承・汎化から最終的にはトランプゲームのフレームワークを作成するってとこまで
話が及ぶ。
また、中盤では
モデリングを実際に行い、コラボレーション図、クラス図、シーケンス図といった
オブジェクト指向の基本となるUMLを書式に拘らずに
実装するために利用する。


#昔メンテしたシステムで汎化が不十分で継承の実装がスマートじゃなかったのを
#思い出した。



目次
 1 オブジェクト指向をなぜ難しいと感じるのか
 2 オブジェクト指向は本当に必要なのか
 3 オブジェクト指向でのソフトウェア開発
 4 オブジェクト指向でプログラムを拡張する
 5 ソフトウェアの振る舞いを変更する
 6 より複雑なソフトウェアの作成
 7 既存のソフトウェアの再利用
 8 再利用を考慮したソフトウェアの設計
 9 フレームワークを利用したソフトウェア開発