なぜ、あなたはJavaでオブジェクト指向開発ができないのかの表紙

なぜ、あなたは Java でオブジェクト指向開発ができないのか(ナゼ アナタ ワ ジャバ デ オブジェクト シコウ カイハツ ガ デキナイ)

Java の壁を克服する実践トレーニング

プログラミング
著者:
アクロクエストテクノロジー/小森裕介(アクロ クエスト テクノロジー/コモリ,ユウスケ)
出版社:
技術評論社
出版日:
2005年01月
ISBN:
9784774122229
在庫:
在庫あり
3.47(19 件 / 楽天ブックス)
中級者向け
Javaプログラミングインターネット・WEBデザインオブジェクト指向設計パターンソフトウェア開発実装設計コーディングソフトウェアエンジニアリング初級者向け

なぜ注目されているか

言及数
108
総合118 22 ランクダウン 26 件の言及
02320222023202420252026

書籍紹介

本質の理解…オブジェクト指向の考え方を、短期間で本質的に理解する。実戦力の習得…オブジェクト指向を使って、ゼロからプログラムを作成する力を身につける。この 2 点を目的として書かれた一冊。

技書の森解説

Java の文法は一通り覚えたのに、いざ自分でクラスを設計しようとするとどう分ければよいのか分からない。その壁に正面から取り組んだのが、 2005 年 1 月に技術評論社から刊行された『なぜ、あなたは Java でオブジェクト指向開発ができないのか』です。副題は「 Java の壁を克服する実践トレーニング」。エスエムジー株式会社と小森裕介氏の共著で、版元の紹介によれば、オブジェクト指向の考え方を短期間で本質的に理解することと、オブジェクト指向を使ってゼロからプログラムを作成する力を身につけることの 2 点を目的に据えた本です。

オブジェクト指向でつまずく本当の理由

オブジェクト指向でつまずく人の多くは、言語機能の知識が足りないわけではありません。クラス、継承、ポリモーフィズムといった文法要素は説明できても、目の前の要件をどのようなクラスに分け、どのクラスにどの責務を持たせるかという設計判断は、文法書では教わらないからです。手続き型の発想では処理の流れを上から順に書き下しますが、オブジェクト指向では先に「誰が何を知っていて、何をするのか」という役割分担を決め、処理はその役割同士のやり取りとして組み立てます。この発想の組み替えこそが本書の書名にある「できない」の正体で、知識を足すだけでは越えられず、考え方を作り替える訓練が必要になる部分です。

手を動かして体得させる演習構成

本書はその訓練を、読んで納得させる読み物としてではなく、手を動かして体得させるトレーニングとして構成しています。抽象論を並べるのではなく、ゼロからプログラムを組み上げる過程を通じてオブジェクト指向の考え方を身につけさせる立て付けで、全 293 ページと 演習主体 の本として通読しやすい分量に収まっています。

2005 年刊行という時代性への注意

読む際は 2005 年刊行という時代性に注意が必要です。刊行当時の Java は J2SE 1.4 から 5.0 への移行期にあたり、ジェネリクスやアノテーションが導入され始めた頃で、ラムダ式やストリーム API はまだ存在しません。したがってモダンな Java の言語機能を学ぶ本ではなく、コード例の周辺環境も 2005 年時点のものとして読む必要があります。一方で、責務の分割 やカプセル化、ポリモーフィズムの使いどころといった設計の考え方そのものは言語バージョンにほとんど依存せず、この普遍的な部分こそが本書の価値の中心です。

類書との使い分けと向いている読者

共著者の小森裕介氏は、後に Web アプリケーションの基盤技術を解説した『プロになるための Web 技術入門』 (2010 年・技術評論社) を著しています。初学者がつまずく箇所を言語化してから解きほぐすという本書の姿勢はそちらにも通じており、両書を著者つながりで併読する読み方もできます。また、オブジェクト指向の「なぜ」を扱う本としては平澤章氏の『オブジェクト指向でなぜつくるのか』 (日経 BP) が知られますが、あちらが仕組みと成り立ちを解説する読み物であるのに対し、本書は自分で設計して書けるようになるための演習という違いがあり、概念の腹落ちを求めるか手を動かす訓練を求めるかで使い分けられます。

Java の 入門書 を 1 冊終えて、動くコードは書けるのにクラス設計になると手が止まる人、コードレビューで「手続き型的な書き方だ」と指摘されて直し方が分からない人には、費やした時間が設計判断の基準として残る一冊です。逆に、文法の学習が済んでいない段階の人や、 Java の新しい言語機能を知りたい人には向きません。オブジェクト指向の考え方は一度身につければ言語を替えても持ち運べる資産であり、設計の壁の前で足踏みしている Java 学習者にとって、遠回りに見えて確実な投資になります。

言及 Qiita 記事 (24 件)

言及 Zenn 記事 (1 件)

この本に興味がある方におすすめ

この本に関連

関連記事

関連用語

共有:Xはてブ