Bertrand Meyer 著
酒匂 寛 翻訳
酒匂 寛 原著
初版が1990年にアスキーより『オブジェクト指向入門』として翻訳出版、オブジェクト指向を深く学ぶための古典的名著として認知されています。第2版は、内容も全面的に構築し直しソフトウェア開発に必要なエッセンスが多く盛り込まれています。主に数多くのデザインパターンや実装技法、希少な存在である手法上の詳細な探求、継承をうまく使うためにはどのようにしたらよいのか、それ以外にもオブジェクト指向方法論、オブジェクト指向分析に関する話題に多く触れられ、オブジェクト指向開発環境に関しての豊富な記述が満載です。
パートA 諸問題
第1章 ソフトウェアの品質
1.1 外的品質要因と内的品質要因
1.2 外的品質要因
1.3 ソフトウェアの保守について
1.4 本章のまとめ
1.5 参考文献
第2章 オブジェクト指向の基準
2.1 基準について
2.2 方法論と言語
2.3 実装と環境
2.4 ライブラリ
2.5 もっと詳しい予告編
2.6 参考文献とオブジェクトのリソース
パートB オブジェクト指向への道
第3章 モジュール性
3.1 5つの基準
3.2 5つの規則
3.3 5つの原則
3.4 本章のまとめ
3.5 参考文献
3.6 演習問題
第4章 再利用性へのアプローチ
4.1 再利用性の目標
4.2 何を再利用すべきか?
4.3 ソフトウェア開発における繰り返し
4.4 「非」技術的障害
4.5 技術的な問題
4.6 モジュール構造の5つの要件
4.7 伝統的なモジュール構造
4.8 多重定義と総称性
4.9 本章のまとめ
4.10 参考文献
第5章 オブジェクト技術への道
5.1 コンピュータ処理の中身
5.2 機能による分解
5.3 オブジェクトによる分解
5.4 オブジェクト指向によるソフトウェア構築
5.5 課題
5.6 本章のまとめ
5.7 参考文献
第6章 抽象データ型
6.1 基準
6.2 実装のバリエーション
6.3 オブジェクトを抽象的に見るには
6.4 仕様記述を形式化する
6.5 抽象データ型からクラスへ
6.6 ソフトウェアを越えて
6.7 補助的な話題
6.8 本章のまとめ
6.9 参考文献
6.10 演習問題
パートC オブジェクト指向の技法
第7章 静的な構造:クラス
7.1 オブジェクトは主体ではない
7.2 ありがちな混乱を避けるために
7.3 クラスの役割
7.4 一様な型体系
7.5 単純なクラス
7.6 基本的な構文規約
7.7 オブジェクト指向的なスタイル
7.8 選択的エクスポートと情報隠蔽
7.9 すべてを1つにする
7.10 検討
7.11 本章のまとめ
7.12 参考文献
7.13 演習問題
第8章 実行時の構造:オブジェクト
8.1 オブジェクト
8.2 モデリングツールとしてのオブジェクト
8.3 オブジェクトと参照を操作する
8.4 生成プロシージャ
8.5 さらに参照について
8.6 参照に対する操作
8.7 複合オブジェクトと拡張型
8.8 アタッチメント:参照と値の意味
8.9 参照を扱うということ:利点と危険
8.10 検討
8.11 本章のまとめ
8.12 参考文献
8.13 演習問題
第9章 メモリ管理
9.1 オブジェクトに何が起きるのか
9.2 呑気なアプローチ
9.3 メモリの回収に関する諸問題
9.4 プログラマ制御による開放(デアロケーション)
9.5 部品レベルのアプローチ
9.6 自動領域管理
9.7 参照カウント
9.8 ガーベジコレクション
9.9 ガーベジコレクションの実用上の諸問題
9.10 領域管理を備えた環境
9.11 本章のまとめ
9.12 参考文献
9.13 演習問題
第10章 総称性
10.1 水平方向と垂直方向の型の汎化
10.2 型のパラメータ化の必要性
10.3 総称クラス
10.4 配列
10.5 総称性のコスト
10.6 議論:これで終わりではない
10.7 本章のまとめ
10.8 参考文献
10.9 演習問題
第11章 契約による設計:信頼性の高いソフトウェアを構築する
11.1 基本的な信頼性のメカニズム
11.2 ソフトウェアの正しさについて
11.3 仕様を書く
11.4 ソフトウェアテキストに表明を導入する
11.5 事前条件と事後条件
11.6 ソフトウェア信頼性のための契約
11.7 表明を用いた作業
11.8 クラス不変表明
11.9 クラスが正しいのはいつか?
11.10 ADTとの関係
11.11 表明命令
11.12 ループ不変表明と変化表明
11.13 表明を使う
11.14 検討
11.15 本章のまとめ
11.16 参考文献
11.17 演習問題
第12章 契約が破られるとき:例外処理
12.1 例外処理の基本概念
12.2 例外処理
12.3 例外メカニズム
12.4 例外処理例
12.5 rescue句の仕事
12.6 高度な例外処理
12.7 検討
12.8 本章のまとめ
12.9 参考文献
12.10 演習問題
第13章 支援メカニズム
13.1 非オブジェクト指向ソフトウェアへのインタフェース
13.2 引数渡し
13.3 命令
13.4 式
13.5 文字列
13.6 入出力
13.7 識別子に関する語彙的慣例
13.8 本章のまとめ
13.9 演習問題
第14章 継承入門
14.1 多角形と長方形
14.2 多相性
14.3 継承のための型付け
14.4 動的束縛
14.5 暫定特性と暫定クラス
14.6 再宣言の方法
14.7 継承の意味
14.8 暫定クラスの役割
14.9 検討
14.10 本章のまとめ
14.11 参考文献
14.12 演習問題
第15章 多重継承
15.1 多重継承の例
15.2 特性の改名
15.3 構造をフラットにする
15.4 反復継承
15.5 検討
15.6 本章のまとめ
15.7 参考文献
15.8 演習問題
第16章 継承のテクニック
16.1 継承と表明
16.2 グローバルな継承構造
16.3 凍結型特性
16.4 制約付き総称性
16.5 試行代入
16.6 型付けと再宣言
16.7 アンカー宣言
16.8 継承と情報隠蔽
16.9 本章のまとめ
16.10 参考文献
16.11 演習問題
第17章 型付け
17.1 型付けの問題
17.2 静的型付け:「なぜ」と「どうして」
17.3 共変性と子孫隠蔽
17.4 システム妥当性への最初のアプローチ
17.5 アンカー型に任せる
17.6 グローバル分析
17.7 多相的catcallに気づく
17.8 評価
17.9 完全な適合
17.10 本章のまとめ
17.11 参考文献
第18章 グローバルオブジェクトとグローバル定数
18.1 基本型の定数
18.2 定数の利用
18.3 クラス型定数
18.4 onceルーチンの応用
18.5 文字列型定数
18.6 ユニーク値
18.7 検討
18.8 本章のまとめ
18.9 参考文献
18.10 演習問題
オブジェクト技術用語集
参考文献
E.1 筆者以外の人の著作
E.2 筆者の著作
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
刷数は奥付(書籍の最終ページ)に記載されています。
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
発生刷 | ページ数 | 書籍改訂刷 | 電子書籍訂正 | 内容 | 登録日 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1刷 | 005 本文7行目 |
3刷 | 未 |
|
2009.12.11 | ||||||
1刷 | 007 「1.2.3 拡張性」の2行上 |
3刷 | 未 |
|
2009.11.10 | ||||||
1刷 | 113 表4.1 「ファイル」列、「found (x)」行 |
5刷 | 未 |
|
2018.04.19 | ||||||
1刷 | 160 図6.1 2つ目の「プッシュ」操作 |
3刷 | 未 |
|
2009.11.26 | ||||||
1刷 | 293 図8.8の下部(TYPE1)下から2つ目 |
5刷 | 未 |
|
2018.04.19 | ||||||
1刷 | 305 上から20行目・21行目 |
5刷 | 未 |
|
2018.04.19 | ||||||
1刷 | 415 上から17行目 |
5刷 | 未 |
|
2018.04.19 | ||||||
1刷 | 421 上から12行目 |
5刷 | 未 |
|
2018.04.20 | ||||||
1刷 | 455 下から9行目 |
5刷 | 未 |
|
2018.04.20 | ||||||
1刷 | 465 上から6行目 |
3刷 | 未 |
|
2008.02.13 | ||||||
1刷 | 483 図11.7 |
5刷 | 未 |
|
2018.04.20 | ||||||
1刷 | 483 図11.7 |
3刷 | 未 |
|
2008.02.18 | ||||||
1刷 | 484 10行目 |
5刷 | 未 |
|
2018.02.01 | ||||||
1刷 | 486 下から5行目 |
4刷 | 未 |
|
2015.11.02 | ||||||
1刷 | 486 数式の下2~3行目 |
3刷 | 未 |
|
2010.01.05 | ||||||
1刷 | 487 上から2行目 |
3刷 | 未 |
|
2008.02.19 | ||||||
1刷 | 487 下から7行目 |
3刷 | 未 |
|
2008.02.19 | ||||||
1刷 | 490 4行目 |
3刷 | 未 |
|
2008.02.19 | ||||||
1刷 | 490 コード 下から5行目 |
3刷 | 未 |
|
2008.02.19 | ||||||
1刷 | 495 コード 下から7行目 |
3刷 | 未 |
|
2008.02.22 | ||||||
1刷 | 503 上から11行目 |
3刷 | 未 |
|
2008.02.26 | ||||||
1刷 | 504 上から5行目 |
3刷 | 未 |
|
2008.02.26 | ||||||
1刷 | 542 上から4行目 |
3刷 | 未 |
|
2008.03.07 | ||||||
1刷 | 549 「12.5.2」の4行目、7行目(2か所) |
3刷 | 未 |
|
2008.03.11 | ||||||
1刷 | 558 上から3行目 |
3刷 | 未 |
|
2008.03.14 | ||||||
1刷 | 566 「・Mathライブラリ」 2行目 |
3刷 | 未 |
|
2008.03.25 | ||||||
1刷 | 595 本文 上から2行目 |
3刷 | 未 |
|
2008.03.25 | ||||||
1刷 | 612 1行目 |
3刷 | 未 |
|
2008.04.02 | ||||||
1刷 | 621 「14.5.5 図形上の慣習」の5行目 |
3刷 | 未 |
|
2008.04.02 | ||||||
1刷 | 625 2行目 |
3刷 | 未 |
|
2008.04.04 | ||||||
1刷 | 638 上から8行目 |
5刷 | 未 |
|
2018.04.20 | ||||||
1刷 | 638 2行目 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 641 14.8.2 タイトル末尾 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 641 図14.15のARRAY_TABLE、LINKED_TABLE、FILE_TABLEの特性 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 643 下から8行目 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 644 5行目 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 645 14.8.5 3行目 |
3刷 | 未 |
|
2008.04.14 | ||||||
1刷 | 650 1行目からのコード内 5行目 |
3刷 | 未 |
|
2008.04.16 | ||||||
1刷 | 654 図14.16内の説明文 |
3刷 | 未 |
|
2008.04.16 | ||||||
1刷 | 755 16.5.1 ●特性呼び出し規則 |
3刷 | 未 |
|
2010.01.26 | ||||||
1刷 | xliii 目次 14.8.2 |
3刷 | 未 |
|
2013.07.08 |
Kota Mizushima さん
第二版に比べると、よりGeneralな話題を扱うようになって、書籍としての価値も上がった…と思うのだけど、あまり読んでる人見かけないな…。メイヤーの独特の語り口とか含めて大好きなんだけど。
紙魚 さん
この内容で入門を名乗るのがすごい 少なくともコード読んでその良し悪しが多少なりとも分かる人じゃないと、本の中で○○してはならないと書かれている理由などが理解できないのではないかと思う 複数人で勉強会する際の題材にするのにも向いた本
glass-_-onion さん
面白かった。