「OOPについて分かりやすく説明してください」

http://q.hatena.ne.jp/1173879369
と言う質問に対して,混乱させる解答のなんと多いことか.

クラスがよく設計図にたとえられるように、クラスという設計図を作れば、オブジェクト指向言語はそこから複数のオブジェクトを作成してくれます。 実質的なクラスという機能は、C言語の構造体に関数の機能を追加できるもの。最初はその程度の認識で良いかと思います。

無視すること.こんな話は聞くだけ時間の無駄.

  • 画面上の物体クラス
  • 画面クラス

以下同文.

この人はプログラミングもやったことないんじゃないかな.


OOP理解する一番の近道は,実は専門書を読んだり,専門教育を受けたり,実戦したりすることなのですね.
http://d.hatena.ne.jp/JavaBlack/20050909/p1


加筆

私は、『オブジェクト指向でなぜつくるのか』という本を読んだことがあります。私には非常に分かり易かったです。

たしか,これも非お勧め本の一つです.

VBをやると、オブジェクトが直感的にわかるようになります。

ウソです.*1

VBのコントロールといわれる部品がアイコンになっていて目に見えます。それがクラスであり、それをドラッグ&ドロップすると実際に使えるようになります。それは、オブジェクトです。そのオブジェクトをクリックすると

うん.だから分かった気になって誤解する初心者が増えるんだよな.まったくMSも罪なことをするもんだ.*2

*1:VBはね、オブジェクト指向にとっての鬼門というか黒歴史というか負の遺産というか.とにかくアレをオブジェクト指向の例として引き合いに出した時点で負けです.

*2:残念だけどオブジェクトもクラスも抽象概念であり目に見えない。ちょうど「無限」も「0」も「点」も「直線」も、全て抽象概念であり、図で表現するこができないのと同じ.