【2021年】オブジェクト指向プログラミング本「最新・人気のおすすめの10冊」

現代のプログラミングでは欠かせない「オブジェクト指向プログラミング(OOP)」。

「オブジェクト指向」という概念はなんとなくはわかるものの、どういった粒度でクラス化するか、継承や委譲によるクラス設計をどうすべきか、クラス間関連を疎に保つには・・など、具体的な技術・考え方は学ばないとわからないもの。

こちらでは、オブジェクト指向プログラミングに関する人気の書籍を紹介していきます。

 
Kindle Paperwhite
発売日 2018/11/07
通常 13,980円
現在 13,980円

 

Contents

 

Kindle Unlimited 1ヶ月無料

kindle_unlimited_sale
 
  • 1ヶ月無料で読み放題
  • 1ヶ月以内でも解約可能
  • 解約後も1ヶ月まで利用可


    

オブジェクト指向プログラミングの参考書「人気ランキング 20冊」

オブジェクト指向プログラミングの今売れ筋本を人気ランキングで一覧したのが以下。

ランキングは日々更新されていますので、最新の人気が反映されています。

 

(2021/02/26 更新)
売筋
Rank
製品評価
1
(4.4)
総評価数 64件
2
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常    2,640円
単行本   2,640円 (+26pt)
Kindle   2,376円 (+24pt)
Kindle Unlimited(読み放題)
(4.4)
総評価数 99件
3
(4.3)
総評価数 33件
4
(4.1)
総評価数 31件
5
オブジェクト指向の考え方 5th Edition impress top gearシリーズ
発売日 2020/10/23
通常    3,740円
単行本   3,740円 (+37pt)
Kindle   3,553円 (+65pt)
(2.5)
総評価数 2件
6
(3.7)
総評価数 14件
7
新・明解C++で学ぶオブジェクト指向プログラミング
発売日 2018/09/15
通常    3,300円
単行本   3,300円 (+148pt)
Kindle   3,135円 (+64pt)
(3.6)
総評価数 7件
8
オブジェクト指向をきちんと使いたいあなたへ
発売日 2016/03/03
通常    2,035円
単行本   2,035円 (+20pt)
Kindle   2,035円 (+20pt)
(4.6)
総評価数 3件
9
新わかりやすいJava オブジェクト指向徹底解説
発売日 2018/11/08
通常    3,278円
単行本   3,278円 (+128pt)
Kindle   2,950円 (+30pt)
(4.2)
総評価数 15件
10
オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
発売日 2014/03/11
通常    4,180円
単行本   4,180円 (+42pt)
(4.2)
総評価数 29件
11
PHP本格入門[上] ~プログラミングとオブジェクト指向の基礎からデータベース連携まで...
発売日 2020/08/03
通常    3,938円
単行本   3,938円 (+39pt)
Kindle   3,741円 (+66pt)
(4)
総評価数 10件
12
(3.4)
総評価数 32件
13
(3.8)
総評価数 12件
14
Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで...
発売日 2017/04/18
通常    3,278円
単行本   3,278円 (+33pt)
Kindle   3,278円 (+33pt)
(4)
総評価数 17件
15
(3.7)
総評価数 4件
16
オブジェクト指向JavaScriptの原則
発売日 2014/06/18
通常    2,640円
単行本   2,640円 (+26pt)
(5)
総評価数 4件
17
(3.6)
総評価数 43件
18
C言語によるオブジェクト指向プログラミング入門
発売日 2009/12/15
通常    3,080円
単行本   3,080円 (+31pt)
(3.6)
総評価数 6件
19
(4.5)
総評価数 9件
20
Java言語プログラミングレッスン 第3版(下) オブジェクト指向を始めよう...
発売日 2012/11/14
通常    2,640円
単行本   2,160円
Kindle   2,508円 (+46pt)
(4.2)
総評価数 13件

 

以降でおすすめ・注目の本をピックアップしていきまっす。

ちなみに、Kindle版のある本ならサンプル送信で試し読み可能。大概目次まで見れるので、内容の概要もつかめるので、サンプル試読おすすめです。

 

オブジェクト指向プログラミングの本 人気の参考書 5冊

以下が今人気(売れ筋)のオブジェクト指向プログラミング関連の本の5冊の詳細です。

(2021/02/26 更新)
売筋
Rank
製品評価
1
(4.4)
総評価数 64件
2
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常    2,640円
単行本   2,640円 (+26pt)
Kindle   2,376円 (+24pt)
Kindle Unlimited(読み放題)
(4.4)
総評価数 99件
3
(4.3)
総評価数 33件
4
(4.1)
総評価数 31件
5
オブジェクト指向の考え方 5th Edition impress top gearシリーズ
発売日 2020/10/23
通常    3,740円
単行本   3,740円 (+37pt)
Kindle   3,553円 (+65pt)
(2.5)
総評価数 2件

 

「オブジェクト指向UIデザイン──使いやすいソフトウェアの原理 (WEB+DB PRESS plusシリーズ)」

銀の弾丸、OOUI。操作性と開発効率の劇的な向上

オブジェクト指向ユーザーインターフェース(OOUI)とは、オブジェクト(もの、名詞)を起点としてUIを設計すること。タスク(やること、動詞)を起点としたUIに比べて、画面数が減って作業効率が高まり、また開発効率や拡張性も向上する、いわば「銀の弾丸」的な効果を持つ。ブログや雑誌記事などで大きな反響を得たこの設計手法について、前半部では理論やプロセスを詳説。そして後半部の「ワークアウト(実践演習)」では18の課題に読者がチャレンジ。実際に考え、手を動かし、試行錯誤をすることにより、OOUIの設計手法を体得できる。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
『「タスク指向からオブジェクト指向への転回」だけは、半ば機械的に行えることでもあり、もう銀の弾丸と言っていいほど汎用的で強力なUI改善方法なのです。』

「マニュアルを読まなくても使えるように」は、手順を単純にすることでは解決できない。手順が覚えやすいからではなく、そもそも決まった手順がないことであると認識するだけでも、設計はかなり改善する。
『「オブジェクト指向で作る」のではなく、在るがままに在るようにして作れば「それがオブジェクト指向」なのです』

根源的な概念なので、オリンピックにおけるアスリートファーストも、政治における都民ファーストも、オブジェクト指向になりますね。
ダイバーシティな世の中で、自分がありたい姿でいられる人生もオブジェクト指向です。
なんとかファーストも、人生も、反対側がなくなることはありません。折り合いをつけていく選択の幅を広げる方が幸せになれます。

UIデザインも、タスク指向も、オブジェクト指向も、どちらも選べて使えることが大切です。
再現性や検証性を高めたい場合は、限定的な手順のタスク指向は強力に有用です。
本書は片側の限界領域を広げてくれますので、バランスは良くなります。

タスク指向を課題解決手法に当てはめると、PDCAの「カイゼン思考」や「戦略思考」。
オブジェクト指向は、「ビジョン思考」や「デザイン思考」になります。
それぞれの手法が一冊の書籍になります。どれも有用で汎用的です。
本書もそのレベルの一冊の認識だといいと思います。

宗教と同じように、一つの宗派がどんな悩みでも導いてくれる「銀の弾丸」になると、考えてはいけません。危険です。いろんな宗教を学び、多面的な視点を知っている方が現実的な解決策につながります。 (参考:Amazon)

↓全て表示 ↑少なく表示
【 オブジェクト指向の説明はわかりやすい 】
オブジェクト指向のUIデザインとは何かを説明するために、間違って同じ本を買わないための蔵書リストソフトのフローの考え方。そして、先にお金を入れないと使えない牛丼屋の券売機の使い難さについて述べている。

この後、実際のプログラム作りの説明に入るがプログラムを実際に書くわけでは無く、オブジェクト指向の概念と理念をいくつかの具体的なテーマに沿ったフローチャートで説明している。

【 UIの観念が完全に欠落している役所のWebページ 】
2020年6月時点で混乱を極めているマイナンバーカードによる給付金の支払い。申請者の記載不備により大量に停滞しているのも、もとをただせばUIの出来が悪いからである。
出来が悪いままリリースされてしまったのは、発注側の役人がソフト屋が実演して見せたタスクが動作することだけを確認して、UIのわかり易さ、使い勝手は考えもせずに受領のハンコを押したからである。
できの悪いUIを見たことが無い人はe-Taxのサイトを開いてみるとよくわかる。どこが入り口でなにをするのか全く分からないページがLinkだらけでつながっている。しかもLink先はPDFだ。
何しろ、国税のe-Taxはつい2年ほど前までブラウザにChromeが使えなかったのだ。
インターフェイス以前の問題である。

【 他の業務や社会生活にも使えるオブジェクト指向 】
したがって、UI指向の意義と段取りを理解すればプログラムを書く人でなくとも、自分の業務に顧客とのインターフェイスがある人は読んで損は無い。
要求仕様を作るときに必須だが、プレゼンをするときにも的確なアプローチができるはずである。
パワポに字をいっぱい書かなくてもね。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

「オブジェクト指向でなぜつくるのか 第2版」

●『オブジェクト指向でなぜつくるのか』7年ぶり、待望の改訂第2版!

現在のソフトウエア開発技術の主役である、オブジェクト指向の全体像とそこに含まれる各技術を
平易な文章で核心をズバリと解説します。

改訂第2版では、すべての文章を細かく見直して修正して、追加のトピックを記述したことに加えて、
多くの技術者の注目を集めている関数型言語の基本的な仕組みと思想を解説する
「第13章 関数型言語でなぜつくるのか」を新たに書き下ろしています。

◆オブジェクト指向の全体像を整理して解説
オブジェクト指向は、プログラミングをはじめ、フレームワーク、デザインパターン、UML、モデリング、
設計、アジャイル開発手法と、ソフトウエア開発全体を支える総合技術となっています。
本書では、オブジェクト指向の全体像とそこに含まれる各技術が何を目的として何を実現するのかを解説します。
併せて、混乱を避けるために全体を「プログラミング技術」と「汎用の整理術」の2つに分けて説明します。

◆OOPのプログラムが動く仕組みがわかる
OOPで書いたプログラムは、特有のメモリの使い方をします。
本書では静的領域、ヒープ領域、スタック領域に対して、クラスやインスタンスや変数がどのように配置され管理されて
いるのかを多数の図を使って説明します。これらを理解することで、自分の書いたプログラムがどのように
動いているのがイメージできるようになります。

◆関数型言語の本質がわかる
オブジェクト指向の「次」の技術として注目される関数型言語は、従来のプログラミング言語とは基本的な
仕組みや考え方が大きく異なっています。本書では関数型言語の仕組みを7つの特徴に分けて説明するとともに、
オブジェクト指向との関係についても述べます。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
グローバル変数の多用は予期せぬ変更で不具合を生む可能性が高い。
従来のプログラミングでは、グローバル変数が至るところから参照・変更されていた。
オブジェクト指向では、独立性の高い部品単位でプログラムを切り出しているのが特徴。
外部から参照・変更されないようにPrivateで隠したり、機能を共通化する継承や、外部からの利用され方を統一するポリモーフィズムという方法を採用し、影響範囲を限定・効率的な利用を促すことで、従来の課題に対する解決策としている。
また、オブジェクト指向を理解する上で必須のメモリ領域の仕組みやプログラムがどのようにして動作しているかの基本は非常に重要で、体系的に学べる良書であると感じた。

【中間コード】
異なるマシンでも同じプログラムを実行できるようにするための仕組み。
LinuxやWindowsでも同じJavaアプリケーションが動くのは、JavaVMが中間コードを解釈しているから。
.NETの場合はCLR。

【3種類のメモリ領域】
ヒープ領域は静的領域、スタック領域と密接に連携しながらアプリケーションを動かしている。

・静的領域
グローバル変数や実行コードを格納する領域。
アプリケーションでまとめて1つ確保している。
ヒープ領域で作成されたインスタンスがメソッドを呼び出すと、静的領域に保存してある実行コード内のメソッドを参照する仕組み。

・ヒープ領域
アプリケーションでまとめて1つ確保している。
プログラム開始時に確保されるメモリ領域で、アプリケーションの必要に応じてメモリの割当て・開放を行う。
インスタンス変数はここに格納され、複数のスレッドから共用される。
オブジェクト指向プログラミングはこのヒープ領域を大量に使って動くため、メモリの管理であるGCが大事。
ガーベッジコレクション(GC)はヒープ領域内にある確保されたメモリをチェックし、不要と判断したら開放していく。
不要と判断する基準としては静的領域やスタック領域から参照されているかどうかを見ている。(ヒープ領域内で完全に独立 or 循環参照している)

・スタック領域
インスタンスがメソッドを実行する単位(スレッド単位)毎に確保される。
サブルーチン動作に必要なメモリである、ローカル変数、引数、戻り値を確保している。
メモリへの格納単位はサブルーチン毎になるが数が多い。そこで、後入れ先出し方式を採用して効率化を図っている。(スタック領域と呼ばれる由来) (参考:Amazon)

↓全て表示 ↑少なく表示
Cを勉強している身ですが、いつかjavaでもやろうと思って「オブジェクト指向」がどのようなものか知ってみることにし、この本を見つけました。読んでみてわかったことは「オブジェクト指向」というのは名前に過ぎないということです。なんか難しく聞こえるただの名前です。中身を1つひとつ読んでいけば構造がわかっていきました。
とりあえず、すぐにでもjavaを始めようと思います。
「オブジェクト指向」の言語や手法を知るには素晴らしい本です。初心者の目線で説明してくれて、専門用語や仕組みもしっかり記載してあります。引用文献までしっかりと記載してあって、かなり時間をかけて本を作ったのだということが分かりました。☆5でフィニッシュです。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常 2,640円
現在 2,376円
264円(10%)OFF!!

  

「オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方」

(概要)
オブジェクト指向設計の名著として名高い“Practical Object-Oriented Design in Ruby”,待望の翻訳版!使いこなせるようになるととても便利なオブジェクト指向ですが,「なんとなく」の理解で使っていると,大きな罠にかかってしまいます。本書は,保守性を上げて運用コストを下げるアプリケーションをつくるために,クラス設計から基本概念,継承のテクニック,ダックタイプ,そしてテスト設計まで,幅広くカバーしています。オブジェクト指向言語を使用するすべての人におすすめの1冊です。

(こんな方におすすめ)
・オブジェクト指向プログラミングをしたことがある人
・オブジェクト指向設計に悩んでいる人

(目次)
第1章 オブジェクト指向設計

第2章 単一責任のクラスを設計する

第3章 依存関係を管理する

第4章 柔軟なインターフェースをつくる

第5章 ダックタイピングでコストを削減する

第6章 継承によって振る舞いを獲得する

第7章 モジュールでロールの振る舞いを共有する

第8章 コンポジションでオブジェクトを組み合わせる

第9章 費用対効果の高いテストを設計する

↓全て表示↑少なく表示
 
Users Voice
オブジェクト指向言語でのクラス設計の基本を、Rubyの観点から網羅した素晴らしい本です。
“説明する内容の とても基本的な事を綴(つづ)る事には一貫して起承転結させている”と言えば お分かりいただけるでしょうか。
貴方のプログラミング技術が素直であればあるほど この本の解説はすんなり読み取れるでしょう。
ただし、他のレビュワーの方々が折に指摘されている通り、翻訳には変に突っかかった独特の癖があります。
私が読みますに、恐らくは直訳で一貫していて意訳を一切含めていないのが原因だと思います。
これは捕捉ですが、例えば、一般的に見慣れない蛍光板が街に設置されていて、誰かが
It can view result as message.
と言えば、これは「実はアレ、メッセージボードなんだ」という意味になりますが、これを直訳のままにすれば「それは結果をメッセージとして表示できるようにしている」となりますね。
訳された方がワザとやっておられるのかは定かではありませんが、それさえ把握できれば普通に読めます。 (参考:Amazon)

↓全て表示 ↑少なく表示
他のレビューでも指摘されているように、内容は基礎的なものが中心です。
すでにJava等でオブジェクト指向の入門本を読んでいる場合は復習となる内容。

また、翻訳があまり良くなく、原文もなかなか冗長な文章なので頭に入ってきにくい...
よく思うのが、スッキリ綺麗なコードを書く人が書籍を執筆すると冗長で非常に読みづらくなる現象は何なんだ...(汗

英語版の方では2018年の8月に新版が出ているため、英語に抵抗がない人はそちらも。
全くの初学者出ない場合、リファクタリングRubyやオブジェクト指向のこころなどの書籍と比較検討をオススメ。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
  

「現場で役立つシステム設計の原則 〜変更を楽で安全にするオブジェクト指向の実践技法」

(概要)
「ソースがごちゃごちゃしていて,どこに何が書いてあるのか理解するまでがたいへん」「1つの修正のために,あっちもこっちも書きなおす必要がある」「ちょっとした変更のはずが,本来はありえない場所にまで影響して,大幅なやり直しになってしまった」といったトラブルが起こるのは,ソフトウェアの設計に問題があるから。日本最大級となる60万件以上の求人情報サイト「イーキャリアJobSearch」の主任設計者であり,システム設計のベテランである著者が,コードの具体例を示しながら,良い設計のやり方と考え方を解説します。

(こんな方におすすめ)
・システム設計のポイントを知りたいエンジニア
・良い設計とは何かを知りたいエンジニア

(目次)
第1章 小さくまとめてわかりやすくする

第2章 場合分けのロジックを整理する

第3章 業務ロジックをわかりやすく整理する

第4章 ドメインモデルの考え方で設計する

第5章 アプリケーション機能を組み立てる

第6章 データベースの設計とドメインオブジェクト

第7章 画面とドメインオブジェクトの設計を連動させる

第8章 アプリケーション間の連携

第9章 オブジェクト指向の開発プロセス

第10章 オブジェクト指向設計の学び方と教え方

↓全て表示↑少なく表示
 
  

「オブジェクト指向の考え方 5th Edition impress top gearシリーズ」

オブジェクト指向は、現代のソフトウェア開発には欠かすことのできない技術要素となっています。オブジェクト指向分析、オブジェクト指向プログラミング、オブジェクト指向データなど、オブジェクト指向を元にした技術にはさまざまなものがあります。しかし、それらはすべて基本的な要素や概念を共有しており、ひとつの基礎から成り立っています。オブジェクト指向に通底する考え方を理解しておくことは、それぞれの技術の使いこなしには欠かすことができません。
本書では、プログラミングを軸に、オブジェクト指向のさまざまな概念を学んでいきます。基礎的な概念であるクラスやオブジェクトを学び、それらがどのような方法でシステムを抽象化し、開発やメンテナンスを効率化するかを示します。プログラミング言語を学んだだけではオブジェクト指向を活かすことはできませんが、こうした思考法を身につけていくことで、次第に依存性の少ない見通しの良いシステムの設計/開発が可能となっていきます。
本書では、1~9章でオブジェクト指向のさまざまな要素を解説していきます、各要素の概念を説明するとともに、クラスをどのように設計すべきなのか、難しいとされる「継承」をどのように実現すべきなのか、さらにインタフェースや抽象クラスなどの利用についても充実した解説を行います。また、後半の10~12章では、デザインパターンの利用、依存関係の制御、設計の原則であるSOLIDなど、よりプロジェクト的な観点からの知識を身につけることができます。
本書はオブジェクト指向開発の揺籃期から、その概念を学ぶための優れた指南書となってきました。第5版ではWebを前提としたシステムやモバイルデバイスなどの要素も取り込んで、現代の開発のさまざまな局面でオブジェクト指向を活かせるようになっています。
オブジェクト指向のエッセンスを正しく理解して、システム開発を効率化し、一歩進んだ開発者となるための有用な知識をまとめた一冊です。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
途中まで読み進めていますが、あまりにも誤字脱字が多く読む気が失せます。
内容は第3章までは平易であり、後半の章も流し読みしましたが、難解な内容ではありません。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

 

   

オブジェクト指向プログラミングの本 高評価のおすすめの5冊

以下が高評価のおすすめのオブジェクト指向プログラミング関連の本の5冊の詳細です。

(2021/02/26 更新)
売筋
Rank
製品評価
1
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常    2,640円
単行本   2,640円 (+26pt)
Kindle   2,376円 (+24pt)
Kindle Unlimited(読み放題)
(4.4)
総評価数 99件
2
(4.4)
総評価数 64件
3
(4.3)
総評価数 33件
4
オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
発売日 2014/03/11
通常    4,180円
単行本   4,180円 (+42pt)
(4.2)
総評価数 29件
5
(4.1)
総評価数 31件

 

「オブジェクト指向でなぜつくるのか 第2版」

●『オブジェクト指向でなぜつくるのか』7年ぶり、待望の改訂第2版!

現在のソフトウエア開発技術の主役である、オブジェクト指向の全体像とそこに含まれる各技術を
平易な文章で核心をズバリと解説します。

改訂第2版では、すべての文章を細かく見直して修正して、追加のトピックを記述したことに加えて、
多くの技術者の注目を集めている関数型言語の基本的な仕組みと思想を解説する
「第13章 関数型言語でなぜつくるのか」を新たに書き下ろしています。

◆オブジェクト指向の全体像を整理して解説
オブジェクト指向は、プログラミングをはじめ、フレームワーク、デザインパターン、UML、モデリング、
設計、アジャイル開発手法と、ソフトウエア開発全体を支える総合技術となっています。
本書では、オブジェクト指向の全体像とそこに含まれる各技術が何を目的として何を実現するのかを解説します。
併せて、混乱を避けるために全体を「プログラミング技術」と「汎用の整理術」の2つに分けて説明します。

◆OOPのプログラムが動く仕組みがわかる
OOPで書いたプログラムは、特有のメモリの使い方をします。
本書では静的領域、ヒープ領域、スタック領域に対して、クラスやインスタンスや変数がどのように配置され管理されて
いるのかを多数の図を使って説明します。これらを理解することで、自分の書いたプログラムがどのように
動いているのがイメージできるようになります。

◆関数型言語の本質がわかる
オブジェクト指向の「次」の技術として注目される関数型言語は、従来のプログラミング言語とは基本的な
仕組みや考え方が大きく異なっています。本書では関数型言語の仕組みを7つの特徴に分けて説明するとともに、
オブジェクト指向との関係についても述べます。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
グローバル変数の多用は予期せぬ変更で不具合を生む可能性が高い。
従来のプログラミングでは、グローバル変数が至るところから参照・変更されていた。
オブジェクト指向では、独立性の高い部品単位でプログラムを切り出しているのが特徴。
外部から参照・変更されないようにPrivateで隠したり、機能を共通化する継承や、外部からの利用され方を統一するポリモーフィズムという方法を採用し、影響範囲を限定・効率的な利用を促すことで、従来の課題に対する解決策としている。
また、オブジェクト指向を理解する上で必須のメモリ領域の仕組みやプログラムがどのようにして動作しているかの基本は非常に重要で、体系的に学べる良書であると感じた。

【中間コード】
異なるマシンでも同じプログラムを実行できるようにするための仕組み。
LinuxやWindowsでも同じJavaアプリケーションが動くのは、JavaVMが中間コードを解釈しているから。
.NETの場合はCLR。

【3種類のメモリ領域】
ヒープ領域は静的領域、スタック領域と密接に連携しながらアプリケーションを動かしている。

・静的領域
グローバル変数や実行コードを格納する領域。
アプリケーションでまとめて1つ確保している。
ヒープ領域で作成されたインスタンスがメソッドを呼び出すと、静的領域に保存してある実行コード内のメソッドを参照する仕組み。

・ヒープ領域
アプリケーションでまとめて1つ確保している。
プログラム開始時に確保されるメモリ領域で、アプリケーションの必要に応じてメモリの割当て・開放を行う。
インスタンス変数はここに格納され、複数のスレッドから共用される。
オブジェクト指向プログラミングはこのヒープ領域を大量に使って動くため、メモリの管理であるGCが大事。
ガーベッジコレクション(GC)はヒープ領域内にある確保されたメモリをチェックし、不要と判断したら開放していく。
不要と判断する基準としては静的領域やスタック領域から参照されているかどうかを見ている。(ヒープ領域内で完全に独立 or 循環参照している)

・スタック領域
インスタンスがメソッドを実行する単位(スレッド単位)毎に確保される。
サブルーチン動作に必要なメモリである、ローカル変数、引数、戻り値を確保している。
メモリへの格納単位はサブルーチン毎になるが数が多い。そこで、後入れ先出し方式を採用して効率化を図っている。(スタック領域と呼ばれる由来) (参考:Amazon)

↓全て表示 ↑少なく表示
Cを勉強している身ですが、いつかjavaでもやろうと思って「オブジェクト指向」がどのようなものか知ってみることにし、この本を見つけました。読んでみてわかったことは「オブジェクト指向」というのは名前に過ぎないということです。なんか難しく聞こえるただの名前です。中身を1つひとつ読んでいけば構造がわかっていきました。
とりあえず、すぐにでもjavaを始めようと思います。
「オブジェクト指向」の言語や手法を知るには素晴らしい本です。初心者の目線で説明してくれて、専門用語や仕組みもしっかり記載してあります。引用文献までしっかりと記載してあって、かなり時間をかけて本を作ったのだということが分かりました。☆5でフィニッシュです。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常 2,640円
現在 2,376円
264円(10%)OFF!!

  

「オブジェクト指向UIデザイン──使いやすいソフトウェアの原理 (WEB+DB PRESS plusシリーズ)」

銀の弾丸、OOUI。操作性と開発効率の劇的な向上

オブジェクト指向ユーザーインターフェース(OOUI)とは、オブジェクト(もの、名詞)を起点としてUIを設計すること。タスク(やること、動詞)を起点としたUIに比べて、画面数が減って作業効率が高まり、また開発効率や拡張性も向上する、いわば「銀の弾丸」的な効果を持つ。ブログや雑誌記事などで大きな反響を得たこの設計手法について、前半部では理論やプロセスを詳説。そして後半部の「ワークアウト(実践演習)」では18の課題に読者がチャレンジ。実際に考え、手を動かし、試行錯誤をすることにより、OOUIの設計手法を体得できる。

↓全て表示↑少なく表示
 
内容サンプル

(引用元Amazon)

 
Users Voice
『「タスク指向からオブジェクト指向への転回」だけは、半ば機械的に行えることでもあり、もう銀の弾丸と言っていいほど汎用的で強力なUI改善方法なのです。』

「マニュアルを読まなくても使えるように」は、手順を単純にすることでは解決できない。手順が覚えやすいからではなく、そもそも決まった手順がないことであると認識するだけでも、設計はかなり改善する。
『「オブジェクト指向で作る」のではなく、在るがままに在るようにして作れば「それがオブジェクト指向」なのです』

根源的な概念なので、オリンピックにおけるアスリートファーストも、政治における都民ファーストも、オブジェクト指向になりますね。
ダイバーシティな世の中で、自分がありたい姿でいられる人生もオブジェクト指向です。
なんとかファーストも、人生も、反対側がなくなることはありません。折り合いをつけていく選択の幅を広げる方が幸せになれます。

UIデザインも、タスク指向も、オブジェクト指向も、どちらも選べて使えることが大切です。
再現性や検証性を高めたい場合は、限定的な手順のタスク指向は強力に有用です。
本書は片側の限界領域を広げてくれますので、バランスは良くなります。

タスク指向を課題解決手法に当てはめると、PDCAの「カイゼン思考」や「戦略思考」。
オブジェクト指向は、「ビジョン思考」や「デザイン思考」になります。
それぞれの手法が一冊の書籍になります。どれも有用で汎用的です。
本書もそのレベルの一冊の認識だといいと思います。

宗教と同じように、一つの宗派がどんな悩みでも導いてくれる「銀の弾丸」になると、考えてはいけません。危険です。いろんな宗教を学び、多面的な視点を知っている方が現実的な解決策につながります。 (参考:Amazon)

↓全て表示 ↑少なく表示
【 オブジェクト指向の説明はわかりやすい 】
オブジェクト指向のUIデザインとは何かを説明するために、間違って同じ本を買わないための蔵書リストソフトのフローの考え方。そして、先にお金を入れないと使えない牛丼屋の券売機の使い難さについて述べている。

この後、実際のプログラム作りの説明に入るがプログラムを実際に書くわけでは無く、オブジェクト指向の概念と理念をいくつかの具体的なテーマに沿ったフローチャートで説明している。

【 UIの観念が完全に欠落している役所のWebページ 】
2020年6月時点で混乱を極めているマイナンバーカードによる給付金の支払い。申請者の記載不備により大量に停滞しているのも、もとをただせばUIの出来が悪いからである。
出来が悪いままリリースされてしまったのは、発注側の役人がソフト屋が実演して見せたタスクが動作することだけを確認して、UIのわかり易さ、使い勝手は考えもせずに受領のハンコを押したからである。
できの悪いUIを見たことが無い人はe-Taxのサイトを開いてみるとよくわかる。どこが入り口でなにをするのか全く分からないページがLinkだらけでつながっている。しかもLink先はPDFだ。
何しろ、国税のe-Taxはつい2年ほど前までブラウザにChromeが使えなかったのだ。
インターフェイス以前の問題である。

【 他の業務や社会生活にも使えるオブジェクト指向 】
したがって、UI指向の意義と段取りを理解すればプログラムを書く人でなくとも、自分の業務に顧客とのインターフェイスがある人は読んで損は無い。
要求仕様を作るときに必須だが、プレゼンをするときにも的確なアプローチができるはずである。
パワポに字をいっぱい書かなくてもね。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
内容サンプル

(引用元Amazon)

 
  

「オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方」

(概要)
オブジェクト指向設計の名著として名高い“Practical Object-Oriented Design in Ruby”,待望の翻訳版!使いこなせるようになるととても便利なオブジェクト指向ですが,「なんとなく」の理解で使っていると,大きな罠にかかってしまいます。本書は,保守性を上げて運用コストを下げるアプリケーションをつくるために,クラス設計から基本概念,継承のテクニック,ダックタイプ,そしてテスト設計まで,幅広くカバーしています。オブジェクト指向言語を使用するすべての人におすすめの1冊です。

(こんな方におすすめ)
・オブジェクト指向プログラミングをしたことがある人
・オブジェクト指向設計に悩んでいる人

(目次)
第1章 オブジェクト指向設計

第2章 単一責任のクラスを設計する

第3章 依存関係を管理する

第4章 柔軟なインターフェースをつくる

第5章 ダックタイピングでコストを削減する

第6章 継承によって振る舞いを獲得する

第7章 モジュールでロールの振る舞いを共有する

第8章 コンポジションでオブジェクトを組み合わせる

第9章 費用対効果の高いテストを設計する

↓全て表示↑少なく表示
 
Users Voice
オブジェクト指向言語でのクラス設計の基本を、Rubyの観点から網羅した素晴らしい本です。
“説明する内容の とても基本的な事を綴(つづ)る事には一貫して起承転結させている”と言えば お分かりいただけるでしょうか。
貴方のプログラミング技術が素直であればあるほど この本の解説はすんなり読み取れるでしょう。
ただし、他のレビュワーの方々が折に指摘されている通り、翻訳には変に突っかかった独特の癖があります。
私が読みますに、恐らくは直訳で一貫していて意訳を一切含めていないのが原因だと思います。
これは捕捉ですが、例えば、一般的に見慣れない蛍光板が街に設置されていて、誰かが
It can view result as message.
と言えば、これは「実はアレ、メッセージボードなんだ」という意味になりますが、これを直訳のままにすれば「それは結果をメッセージとして表示できるようにしている」となりますね。
訳された方がワザとやっておられるのかは定かではありませんが、それさえ把握できれば普通に読めます。 (参考:Amazon)

↓全て表示 ↑少なく表示
他のレビューでも指摘されているように、内容は基礎的なものが中心です。
すでにJava等でオブジェクト指向の入門本を読んでいる場合は復習となる内容。

また、翻訳があまり良くなく、原文もなかなか冗長な文章なので頭に入ってきにくい...
よく思うのが、スッキリ綺麗なコードを書く人が書籍を執筆すると冗長で非常に読みづらくなる現象は何なんだ...(汗

英語版の方では2018年の8月に新版が出ているため、英語に抵抗がない人はそちらも。
全くの初学者出ない場合、リファクタリングRubyやオブジェクト指向のこころなどの書籍と比較検討をオススメ。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
  

「オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)」

オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
(著)アラン・シャロウェイ, ジェームズ・R・トロット
発売日 2014/03/11
(4.2)

本書は、オブジェクト指向パラダイムを有効にするためのデザイ
ンパターンの中から、重要度の高いものを厳選し、解説しています。その際、要
求における流動的要素や、要求の変化という観点から、さまざまな事例につい
て丁寧な考察を行うことによって、デザインパターンそのものを導き出すという
ユニークなアプローチを採っています。
オブジェクト指向パラダイムのメリットを120% 引き出したいと考えている方
に、まず本書をお薦めすることができます。デザインパターンを考察することで
こそ、「オブジェクト指向の本当の姿」=「オブジェクト指向のこころ」
が理解できるようになるわけです。また、デザインパターンを勉強したことがな
い方、勉強はしたが日々の仕事に活用できないと悩んでおられる方にもお薦めで
す。本書で解説されている観点に立つことで、「時間軸を見渡した設計」とも言
える考え方を身につけることができ、設計・開発するシステムはひと味もふた
味も違ったものとなることでしょう。

↓全て表示↑少なく表示
 
Users Voice
あなたは以下のような謳い文句をどこかで聞いたことがありますか?

・オブジェクトとはデータと振る舞いを持った「もの」である

・カプセル化とはデータを隠蔽することである

・オブジェクト指向言語では継承を使用することによって再利用が促進される(差分プログラミング)

・オブジェクトとは現実世界における実体であるため、名詞と動詞を抽出することで適切なクラス設計を行うことができる

この本は本来あるべきオブジェクト指向設計においてはこれらが適切ではないということをデザインパターンを使って解説しています。

この本を以下の方に薦めます。

・デザインパターン本(GoF本を含む)を読んだがいまいち理解できなかった方(オブジェクト指向初級者)

この本はデザインパターンの解説だけではなく、その元となっているオブジェクト指向原則についても説明しています。そのため他のデザインパターン本よりも有益でありかつ理解しやすいものとなっています。

・オブジェクト指向はある程度理解していると考えている方(オブジェクト指向中級者)

オブジェクト指向原則やデザインパターンに対する知識の整理が可能となります。「それについては知っていた」という箇所が出てきた場合には自分を褒めましょう。(この逆は、「もしかしたら自分はオブジェクト指向初級者だったのかもしれない。」です。)

また、この本が他のデザインパターン本よりも理解しやすいのは以下の理由もあると思います。

・著者がデザインパターン講義を行っている講師である

理解するのが困難な箇所について何度も解説を行った経験があり、そのためその解説が洗練されている。

・翻訳がすばらしい

村上雅章さんの翻訳は本当にすばらしいです。

オブジェクト指向及びデザインパターンについて書かれた本を今までに多く読んできましたが、この本が一番分かりやすく有益であると思いました。 (参考:Amazon)

↓全て表示 ↑少なく表示
題名は少し原作と変わったが、デザインパターンについての解説書。

著者が過去に携わった業務における、著者の誤った設計を示し、
デザインパターンについて説明しながら、それを用いて
現在最善と思われる解決策を深い考察とともに説明している。
それでいて、理解しやすくオブジェクト指向の原則を説明しながら
しっかり各パターンについて説明している。

これは、よくある『わかりやすい、、、』『はじめての、、、』
のような誰でも書けそうな上から目線の書籍とは全く違う。
一流の設計者が自分の経験を基に最善の設計についての追求を
続けた過程が述べられており、より技術者好みの深い考察が多い。
(必然的に、リファレンスとしての用途では使えない。)

著者はおそらく、自分の過去の仕事に対する検討や反省を続けていた
のだろうという印象を受けた。このような書籍を多く読むことで、
設計に対する自分なりの哲学を身に着けることができるだろう。

特に秀逸だと思ったのは、Bridgeパターンの説明である。
今までピンとくる解説がなく曖昧に覚えていたものが、すっきりと
理解できた。他の方に説明するときは、この本の例を使うことにしている。
プロとして設計に携わっているならば必読だと思う。 (参考:Amazon)

↓全て表示 ↑少なく表示
 
オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
発売日 2014/03/11
通常 4,180円
現在 4,180円

  

「現場で役立つシステム設計の原則 〜変更を楽で安全にするオブジェクト指向の実践技法」

(概要)
「ソースがごちゃごちゃしていて,どこに何が書いてあるのか理解するまでがたいへん」「1つの修正のために,あっちもこっちも書きなおす必要がある」「ちょっとした変更のはずが,本来はありえない場所にまで影響して,大幅なやり直しになってしまった」といったトラブルが起こるのは,ソフトウェアの設計に問題があるから。日本最大級となる60万件以上の求人情報サイト「イーキャリアJobSearch」の主任設計者であり,システム設計のベテランである著者が,コードの具体例を示しながら,良い設計のやり方と考え方を解説します。

(こんな方におすすめ)
・システム設計のポイントを知りたいエンジニア
・良い設計とは何かを知りたいエンジニア

(目次)
第1章 小さくまとめてわかりやすくする

第2章 場合分けのロジックを整理する

第3章 業務ロジックをわかりやすく整理する

第4章 ドメインモデルの考え方で設計する

第5章 アプリケーション機能を組み立てる

第6章 データベースの設計とドメインオブジェクト

第7章 画面とドメインオブジェクトの設計を連動させる

第8章 アプリケーション間の連携

第9章 オブジェクト指向の開発プロセス

第10章 オブジェクト指向設計の学び方と教え方

↓全て表示↑少なく表示
 
  

 

オブジェクト指向プログラミング本「Kindle Unlmited 読み放題 人気ランキング」

「Kindle Unlimited」は、Amazonの定額本読み放題サービス。

実はそこにオブジェクト指向プログラミングの本もそこそこあるんです。すなわち、定額で何冊も学習することも可能

Kindle Unlimitedの主な特徴としては、おおよそ以下の通り。

  • 雑誌がかなり充実
  • 豊富なKindle個人出版本がほとんど読み放題
  • 最近は出版社単行本も対応増加

個人的には雑誌が、IT系(CG WORLD等)、ガジェット系(Get Navi等)、ゲーム(ファミ通等)、など見たい雑誌が幅広く読めるのが大きな魅力。2冊以上読みたいものがあるだけで確実にお得です。

また、30日無料体験も可能なので、体験期間を利用して無料で学習してみるのもお得な学習法です。

以下がKindle Unlimited対応のオブジェクト指向プログラミング関係の本人気ランキングです。

(2021/02/26 更新)
売筋
Rank
製品評価
1
速習 Python 3 中: オブジェクト指向編
発売日 2016/11/06
通常    800円
Kindle   800円 (+8pt)
Kindle Unlimited(読み放題)
(4)
総評価数 20件
2
オブジェクト指向でなぜつくるのか 第2版
発売日 2014/03/05
通常    2,640円
単行本   2,640円 (+26pt)
Kindle   2,376円 (+24pt)
Kindle Unlimited(読み放題)
(4.4)
総評価数 99件
3
(5)
総評価数 1件
4
(0)
総評価数 0件
5
(0)
総評価数 0件
6
(5)
総評価数 1件
7
(4)
総評価数 2件
8
(0)
総評価数 0件
9
(0)
総評価数 0件
10
(5)
総評価数 1件

 

   

関連:「デザインパターン」「リファクタリング」に関する書籍

オブジェクト指向プログラミングを学ぶことで、適切なクラス設計に基づくコーディング基礎知識が得られます。

加えて学びたいのが、汎用的で再利用可能な設計知識となる「デザインパターン」。少なくともプロのエンジニアなら主要パターンの知識は必須です。

また、設計とともに、コーディング自体の守るべき原則・アンチパターンなどのリファクタリング知識も知ることで、保守性・拡張性の高い実装が可能となります。

以下では「デザインパターン」「リファクタリング」に関する書籍を紹介しています、合わせてのぞいて見てください。

 

関連:最新おすすめのKindle端末

以下では最新のKindle端末について比較、おすすめ紹介しています、合わせてのぞいて見てください。

いじょうでっす。

コメント

タイトルとURLをコピーしました