オブジェクト指向の考え方 5th Edition
インプレス
- Matt Weisfeld(著者)、 神林 靖(翻訳)
言語習得のその次のオブジェクト指向の理念
オブジェクト指向は、現代のソフトウェア開発には欠かすことのできない技術要素となっています。オブジェクト指向分析、オブジェクト指向プログラミング、オブジェクト指向データなど、オブジェクト指向を元にした技術にはさまざまなものがあります。しかし、それらはすべて基本的な要素や概念を共有しており、ひとつの基礎から成り立っています。オブジェクト指向に通底する考え方を理解しておくことは、それぞれの技術の使いこなしには欠かすことができません。
本書では、プログラミングを軸に、オブジェクト指向のさまざまな概念を学んでいきます。基礎的な概念であるクラスやオブジェクトを学び、それらがどのような方法でシステムを抽象化し、開発やメンテナンスを効率化するかを示します。プログラミング言語を学んだだけではオブジェクト指向を活かすことはできませんが、こうした思考法を身につけていくことで、次第に依存性の少ない見通しの良いシステムの設計/開発が可能となっていきます。
本書では、1~9章でオブジェクト指向のさまざまな要素を解説していきます、各要素の概念を説明するとともに、クラスをどのように設計すべきなのか、難しいとされる「継承」をどのように実現すべきなのか、さらにインタフェースや抽象クラスなどの利用についても充実した解説を行います。また、後半の10~12章では、デザインパターンの利用、依存関係の制御、設計の原則であるSOLIDなど、よりプロジェクト的な観点からの知識を身につけることができます。
本書はオブジェクト指向開発の揺籃期から、その概念を学ぶための優れた指南書となってきました。第5版ではWebを前提としたシステムやモバイルデバイスなどの要素も取り込んで、現代の開発のさまざまな局面でオブジェクト指向を活かせるようになっています。
オブジェクト指向のエッセンスを正しく理解して、システム開発を効率化し、一歩進んだ開発者となるための有用な知識をまとめた一冊です。
発売日:2020-10-23
ページ数:303ページ
目次
表紙
サンプル/正誤表/商標など
まえがき
訳者まえがき
著者紹介/訳者紹介
Chapter 1 オブジェクト指向概念への招待
1.1 基本概念
1.2 オブジェクトとレガシーシステム
1.3 手続き型プログラミングとオブジェクト指向プログラミング
1.4 手続き型開発からオブジェクト指向開発への移行
1.5 オブジェクトとは何か
1.6 クラスとは何か
1.7 視覚化ツールとしてクラス図を使用する
1.8 カプセル化とデータ隠蔽
1.9 継承
1.10 ポリモーフィズム
1.11 コンポジション
1.12 まとめ
Chapter 2 オブジェクトを用いて考える
2.1 インタフェースと実装の相違を理解する
2.2 抽象的な考え方を使ってインタフェースを設計する
2.3 真に最小限のユーザーインタフェースを提供する
2.4 まとめ
Chapter 3 オブジェクト指向概念の詳細
3.1 コンストラクタ
3.2 エラー処理
3.3 スコープの重要性
3.4 演算子のオーバーロード
3.5 多重継承
3.6 オブジェクトの操作
3.7 まとめ
Chapter 4 クラス解剖
4.1 クラスの名前
4.2 コメント
4.3 属性
4.4 参照を渡す/4.5 コンストラクタ
4.6 アクセスメソッド
4.7 パブリックインタフェースメソッド
4.8 プライベート実装メソッド
4.9 まとめ
Chapter 5 クラス設計のガイドライン
5.1 実世界システムをモデル化する
5.2 パブリックインタフェースを特定する
5.3 頑健なコンストラクタを(デストラクタも)設計する
5.4 クラス中にエラー処理を設計する
5.5 再利用を意識して設計する
5.6 拡張を意識して設計する
5.7 保持性を意識して設計する
5.8 永続オブジェクトを使用する
5.9 まとめ
Chapter 6 オブジェクトを用いて設計する
6.1 設計ガイドライン
6.2 オブジェクトラッパー
6.3 まとめ
Chapter 7 継承とコンポジションをマスターする
7.1 オブジェクトを再利用する
7.2 継承
7.3 コンポジション
7.4 なぜカプセル化がオブジェクト指向の基本なのか
7.5 まとめ
Chapter 8 フレームワークと再利用:インタフェースと抽象クラスを使って設計する
8.1 コード:再利用すべきかすべきでないか
8.2 フレームワークとは何か
8.3 契約とは何か
8.4 eビジネスの例
8.5 まとめ
Chapter 9 オブジェクトの構築とオブジェクト指向設計
9.1 コンポジション関係
9.2 段階的に構築する
9.3 コンポジションの型
9.4 依存関係を避ける
9.5 多重度
9.6 総まとめの例
9.7 まとめ
Chapter 10 デザインパターン
10.1 なぜデザインパターンなのか
10.2 Smalltalk のモデル/ビュー/コントローラ
10.3 デザインパターンの型
10.4 アンチパターン
10.5 まとめ
Chapter 11 依存関係と強く結合したクラスの回避
11.1 コンポジションと継承、そして依存関係の注入
11.2 まとめ
Chapter 12 オブジェクト指向設計のSOLID の原則
12.1 オブジェクト指向設計のSOLID の原則
12.2 まとめ
索引
奥付
著者プロフィール
-
Matt Weisfeld(著者)
米国オハイオ州クリーブランド生まれ。カヤホガコミュニティカレッジ准教授。ソフトウェア開発、試験、品質管理、プロジェクト管理、企業教育において長年の経験を積んだのち2001年より現職。ソフトウェアのテストと品質保証に興味をもつ。マイアミ大学からシステム分析で学士号を、ボーリンググリーン州立大学からコンピュータ科学の修士号を、そしてボールドウィンウォレス大学からシステム管理でMBAを取得。
絶賛!発売中!
-
- 実戦で学ぶ 藤沢里菜の感覚 [予約]
-
- 藤沢里菜(著者)
- 囲碁その他
- わたしは囲碁をこう考える
-
- 日本のすごい鉄道 [予約]
-
- 西園寺(著者)
- 旅行・観光
- すごすぎる日本の鉄道を紹介!!
-
- なぜAIは動くのか(仮) [予約]
-
- Ronald T. Kneusel(著者)、 長尾高弘(翻訳)、 三宅陽一郎(監訳)
- ロボット・電子工学・loT
- 初期AIからニューラルネットワークの登場、機械学習、現代の大規模言語モデルまでAIの進化の歴史と技術的背景がわかる
-
- 混乱のアメリカと日本の未来(仮) [予約]
-
- 中林美恵子(著者)
- ビジネス・経済 読み物
- アメリカがバラバラになっている。日本もその影響下にある
Copyright © Mynavi Publishing Corporation