Section.1 Object | |
---|---|
さて、ここからが本題となるのだが、ここでのターゲットは、Windowsのアプリケーションである。現時点で自分は、全くの素人であるので、このメモが、どの様な方向に向かうのか、最終的に、どこまで辿り着けるかは未知数だが、少しでも、自分の中で蓄積されてきた疑問がクリアになれば、と思っている。 まず、オブジェクト指向について、少々語らねばなるまい。
余談である。 Windowsに学んだもの 最近は、当たり前になってしまった為か、Windowsのありがたみというのが忘れられがちで、技術者はLinuxだよ等という声も多いが、ここいらで、一度見直しておくのも良いだろう…と思って、ここを書いている。自分がWindowsを最初に使った時、めちゃくちゃびっくりした事が有った。同じプログラムが、IBM-PC上でも、PC-98シリーズ上でも動作しているのだ。今で言えば当たり前だが、当時は考えも及ばなかった事だったのだ。確かに、CPUは同系列のものを使っているから、マシン語レベルでは同じ訳で、MS−DOSも同様に動作するし、文字表示だけのプログラムなら何とか動作していたのだが、例えば違うハードウエアにアクセスを要するグラフィック画面や周辺ハードウエア制御については、PC-98シリーズ用に造ったソフトは、IBM-PCでは動作しないというのが普通だったからである。自分は、これを、Windowsが各ハードウエア毎にドライバを用意し、これらのインタフェイスを統一した為に出来た芸当だと理解した。グラフィック画面の例を挙げれば、アプリケーションが直接VRAMを描くのでは無く、Windowsに対して、この図形を描いて下さいと伝えれば、その要求を、Windowsが共通のインタフェイスを持つVRAMドライバに伝え、ドライバが、実際のハードウエアに対してアクセスするのである。こう見ると、Windowsというもの。これも、一つの大きなオブジェクトの固まりと考える事が出来る。即ち、このインタフェイスさえ統一されていれば、ハードウエアの事は知らなくても良い訳である。逆に考えれば、ハードウエアがバージョンUPされても、このインタフェイスさえ一定であれば、Windowsや、そのアプリケーションは動作する訳である。この辺りも、Windowsがオブジェクト指向の言語と相性の良い、一つの要因かも知れない。 | |
HomeSweetHome2 Ozzy's Software |