• 締切済み

クラスについて教えてください。

いろいろネットでクラスのことを検索しているのですが、いまいち良くわからないです。 例えや語句の意味等を詳しく理解していたら教えていただけないでしょうか。 また、言語とはちょっと違うと思いますが、フレームワークとは何かを理解していたら教えていただけないでしょうか。 よろしくお願いします。

みんなの回答

noname#49664
noname#49664
回答No.1

では、かなりおおざっぱな解釈ですが・・。 ・クラスについて 「オブジェクト指向」というものはわかりますか? これがわからないとイメージしにくいのですが・・。  今のプログラムは、非常に複雑で膨大な処理が必要になります。ですので、開発をする度に毎回全部のプログラムを作ってられないのです。そこで、「ボタンとして動くミニプログラム」「ウィンドウを表示するミニプログラム」というように、小さなプログラムのかたまりをたくさん用意し、それらを組み合わせてプログラムを作るようにしています。これを「オブジェクト」と呼びます。  クラスは、このオブジェクトの「設計図」みたいなものだといってよいでしょう。  例えば、家を建てるとき、山に行って1本1本の木を伐採して柱を作ってはそれを立てて・・というように全部一から作っていたのが従来のプログラミング。今は、あらかじめ用意してあった「骨組みの設計図」「窓の設計図」「キッチンの設計図」「屋根の設計図」といったように独立した部品としてちゃんとできている設計図(←これがクラス)をもとに部品を作り、それをプラモデルみたいに組み合わせて作るわけです。・・ということで、なんとなくわかりますか? ・フレームワーク 先のオブジェクト指向の話でも触れたように、今のプログラムは、全部一から作るのではなく、あらかじめ用意してある便利な部品を組み合わせて作るのが基本です。ということは、そうした部品が用意してあって、いつでも利用できないといけません。これが一般に「ライブラリ」などと呼ばれているものです。  ただし、ライブラリとして機能が用意されていても、それを実際に使いこなすのは大変です。「すぐにプログラムを作れる部品が用意してありますよ」というので見てみたら、その中に何千個もの部品が入っていた、としたら、1つ1つの役割を覚えるだけでも大変でしょう?  そこで、部品の「機能」だけでなく、それらを動かす「仕組み」までも用意してしまおう、ということで考えられたのが「フレームワーク」です。  今までは、プログラマは必要に応じて利用する機能をライブラリの中から選んで組み合わせていました。が、フレームワークは、基本的なプログラムの枠組みは既にできあがっています。そして「こういう場合にはこの部品を作ってください」ということが決まっているのです。プログラマは、それに従い、必要なものだけを作ればいいんです。  つまり、従来のプログラムでは、プログラマが必要に応じて自分でさまざまな機能を呼び出していたが、フレームワークでは、フレームワークのほうが、必要に応じてプログラマの書いた処理を呼び出していくのです。主従が逆になってるんですね。・・ということで、わかるでしょうか??

oshobo
質問者

お礼

ご回答有難うございました。 詳しい説明をありがとうございます。 とても勉強になりました。

関連するQ&A