オブジェクト指向ができるまで -備忘録-
・なぜ勉強したか?
・次の客先でJavaを使うので、オブジェクト指向プログラミングの理解を深めたかったから。
・一応C#が得意だけど、オブジェクト指向プログラミングってどうやって生まれたんだろう、とふと疑問に思ったから。
・オブジェクト指向プログラミングの歴史
ソフトウェア危機
・1960年代、高級言語が開発されソフトウェアの生産性が一気に向上。
このままでは需要が増大するソフトウェアに対応しきれない!
構造化プログラミング
・そこで、様々なアイディアが提案され特に構造化プログラミングが注目された。
構造化プログラミングってどんなん?
-goto文はやめましょう。
-これからはロジックを以下の3つの構造で開発しましょう。
-順次実行
-条件分岐
-繰り返し
だけど、こんな問題がありました。
「低レベルな基本データ型の抽象化しか出来ない。」
モジュラプログラミング
・上記の問題を解決するために、
「自分でデータ型を定義できるようにして、それを処理する手続きとか関数をまとめて一個の単位にしましょう!」
という考え方が提案され、これがモジュールという概念。
しかし、まだ問題がありました。
「自分でデータ型を定義できるようになったことで、定義に対して値となる実体(インスタンス)が複数存在するようになり、実体を管理する枠組みがなかった。」
オブジェクト指向プログラミング
・またもや上記の問題を解決するのに、考えられたのがオブジェクト指向。
実体(インスタンス)を整理して管理する仕組み(クラスとか、継承とか)がこいつによって作られた。
「Simula」(1967年)がオブジェクト指向初の言語らしい。
まとめ
・ソフトウェア開発が膨大になりすぎて管理できないよー
開発を楽にしたい!から生まれた。