■初心者に自分の好きなPG言語を押しつけるスレ■
■ このスレッドは過去ログ倉庫に格納されています
0209デフォルトの名無しさん
2010/02/20(土) 01:38:10いいセンスしてるね!
Cはオブジェクト指向に向いてない言語だからコード的にはそれっぽくないけど、概念としては近い。
オブジェクト指向でない、Cの考え方では、FILE構造体ひとつひとつを、
ファイルの読み書きに必要な情報が記された「データの集合」とみるのだが、
オブジェクト指向的には、それは抽象化された「ファイル」そのものと見る。
ファイル操作のための関数群は、非オブジェクト指向的には、引数に指定した「データの集合」を操作する関数だが、
オブジェクト指向では、「ファイル」を操作する関数と考える。
ファイル操作に、FILE構造体の中身を一切知らなくてもいいことも、オブジェクト指向的。
FILE構造体の内容を一切気にすることなく、用意された関数を使うだけで利用できるのは、カプセル化の思想。
ただ残念ながら、FILEでは、継承の例を挙げるのは難しい。
ポリモーフィズムの例を挙げるとすれば、fprintfとsprintfの関係?いや、違うかな……
■ このスレッドは過去ログ倉庫に格納されています