- 締切済み
オブジェクト指向で可能になった事?
検索をかけたのですが、ピッタリとする答えが無かったので質問させていただきます。_(._.)_ 手続き型では不可能でオブジェクト指向で可能になった事て何なんでしょう?
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- liar_adan
- ベストアンサー率48% (730/1515)
手続き型では不可能でオブジェクト指向で可能になった事、 は、特にありません。 オブジェクト指向で可能なことは、手続き型プログラミングで実現することができます。 もちろん、クラスが使えるとか、継承ができるとか、 言語レベルで可能になったことはいろいろあるのですが、 プログラムとして考えてみると、特にこれができるようになったというものはありません。 オブジェクト指向はプログラム作成の「流儀」であって、 それ以上のものではありません。 たとえば、ヘンリー・フォードは、 自動車工場に「流れ作業」を取り入れました。 これによって、生産速度は飛躍的に向上しました。 以前のやり方でも自動車を作ることは可能ですが、 速度と効率性が違います。それが流れ作業の意味です。 オブジェクト指向も、それ以前と比べて「便利になった」「楽になった」 ということが取得です。 ひとつには、クラスライブラリを作ることで、GUIプログラミングが便利になりました。 手続き型でもたとえば、X Window Systemなどでは 関数の集まりとしてのライブラリが作られていましたが、 それよりもクラスによってライブラリを構成する方が便利で、再利用がしやすかったわけです。 「前のやり方でもできるけど、前よりは便利」 なのです。(たぶん…) それと、GUIプログラムの相性の良さというのも、 オブジェクト指向の特徴です。 以前のプログラムは、テキスト画面とキーボード操作だけで、 ひとつのコンピュータにはひとつのプログラムだけ動き(シングルタスク)、 処理も直線的なものでした。 しかし、GUIの時代になると、マウスでボタンを押したり、 複数のプログラムが同時に動いたり、 処理も複線的になってきました。 そういう処理には、オブジェクト指向の、 「オブジェクト同士がメッセージをやりとりしている」 という動作がプログラムを構築するのに向いていたのです。
- imogasi
- ベストアンサー率27% (4737/17070)
下記のようなサイトが見つかりました。 http://www.artlex.net/gonta/jpn/objprog/c1_4.html ほかに カプセル化 クラス化 継承・派生 多重定義 オーバーロード 等でWEB照会されて、拾い読みして、まとめられては どうでしょう。 手続き型--当初よりある オブジェクト指向--反省により改善 の歴史的な問題から、オブジェクト指向がメイン課題になってなかった面があると思う。20年以上前はメモリやスピードやディスクとかが高価であったり、それ以前の言語体系とのコンパチのため採用できなかった面もあったと思います。 やっと旧来の言語もオブジェクト指向の概念をとりいれてきて、両者の違いは製品面などではハッキリしなくなっているかもしれません。 例・コボルとオブジェクト指向 http://www.hitachi.co.jp/Prod/comp/soft1/products/case.html