データ抽象は、オブジェクト指向の原因(動機)ではなく、
結果(副産物、しかもどちらと言えば、プログラミングにおける
オブジェクト指向の必要性を、一般化・合理化したいがための、
後から取って付けた理屈)だから、データ抽象の延長線上には、
オブジェクト指向は見えてこない。オブジェクト指向の真の動機
は別にあるからだ。

その真の動機とは、文字通りオブジェクトを指向すること、
現実世界の様々な「モノ」をプログラムの中に記述することである。

これはSimulaなどのシミュレーション用言語においては、
シミュレーションの対象物(モノ)をプログラムのコードとして
素直な形で記述するという意味で、自然な動機であったのだが、
シミュレーション以外の用途ではさほど必要性はないと思われる。

故に、何をオブジェクトにしていいか分からない、という困惑は
一般的プログラミングにおいては当然のことなのである。
一般的なプログラミングにおいて、オブジェクト指向しようと
すれば、プログラム中の様々な要素を「モノ」に見立てる
必要があるだろう。その必要性が無いにもかかわらず。

しかし、WindowsなどのGUIプログラミングにおいては、
様々なGUI部品(モノ)をプログラム中にオブジェクトとして
素直な形で記述できるので、オブジェクト指向の必要性は
高いと思われる。