オブジェクト指向プログラミング

オブジェクト指向とはプログラミングの部品化とその再利用を促進するためのプログラミング方法論である。
オブジェクト指向でもっとも重要な要素は隠蔽と継承といわれる方法である。
これらを以下で説明する。
 

隠蔽

大規模なプログラムは小さい部品ごとに作成し、それらを組み合わせることによって実現する。このとき
部品の内部だけで参照されるデータと外部から参照されるデータがありうる。
このときもし、部品の実装に依存する部分を外部から参照していたら、部品の実装を変更したとき
外部のプログラムは正常に動かなくなる可能性がある。そこでデータ構造を定義するとき、内部だけに公開(参照可能にすること)する
ものと外部に公開するものを明確に区別しておき、内部用のデータには外部からは参照しないようにする必要がある。
オブジェクト指向を謳ったプログラミング言語では宣言によって参照を禁止する(隠蔽)機能がそなえられている。
通常このような部品はクラスと呼ばれる単位で作成する。
通常部品内部で計算を可能にするために部品内部で関数などプログラムができる仕組みがとりいれられている。

C++ではクラスは構造体の拡張として実装されている。構造体内に関数定義が可能になったものと思えばよい。
 

継承

部品の再利用を促進するために、クラスはカスタマイズ可能になっている。カスタマイズするときもとになるクラスを親クラス(基本クラスともいう)、できたクラスを子クラスという。継承をサポートしたプログラミング言語では通常親クラスを宣言すれば、子クラスの記述は差分(カスタマイズ部分)だけでよくコードを繰り返す必要はない。この機能を継承と呼んでいる。
 
 

メッセージ

部品間の情報のやり取りは通常、部品で定義された外部に公開された変数または関数を参照または呼び出しすることで行う。
MFC(マイクロソフトのライブラリ)ではこのような外部部品とのやりとりにつかう関数にメッセージとよぶ名前が対応している。
また、逆にメッセージに対して対応する関数を(メッセージハンドラと呼んでいる。
 
 

コーディング
目次