オブジェクト指向の3要素として、カプセル化・継承・ポリモーフィズムがよく言われます。
ただ、原典がよくわからないことが気になります。「オブジェクト指向の3要素」の原典について調べてみました。
結論
B.ヘンダーソン-セラーズ「オブジェクト指向ソフトウェア工学(1991)」(邦訳は1994)が原典ではないかと思われます。
同書P19には、
オブジェクト指向に対して共通の認識はなく、それぞれの研究者が異なる面を強調していることを図8は示すが、この図から概念をグループに分けることができる。
とあり、実際にこの図8では12人の研究者による11種類のオブジェクト指向の「必須要素」が並んでいます(1人で6要素を挙げる研究者もいます)。これが書かれた時点ではオブジェクト指向の必須要素について共通認識がないことは事実のようです。この11要素を著者はグループ化し、以下のように要約しています(同書P19)。
(1) 情報隠蔽とカプセル化の概念
(2) クラス化による抽象化
(3) 継承を通して実現される多態
これは、現在言われている3要素と以下のように対応させることができます。
現在の3要素 | 同書による3要素 |
---|---|
カプセル化 | (1) 情報隠蔽とカプセル化の概念 |
継承 | (2) クラス化による抽象化 |
ポリモーフィズム | (3) 継承を通して実現される多態 |