LEGOとプラモデル
オブジェクト指向プログラム(OOP)と非オブジェクト指向プログラムの違いってナンだろう
と考えてみたところ、
OOPはLEGOブロック、非OOPはプラモデルみたいなモンではないかと思いました。
ブロック自体はどこのパーツと決まっているわけでなく、作成者がどこに使うか決めていきます。
ブロックは小さなまとまりですが、いろいろなパーツに流用ができます。
それを組み合わせることにより家になったり、乗り物になったりします。
プラモデルの場合だと
1つ1つがどこの部位か決まっており、パーツの流用もできません。
ガンダムの足をザクの足に流用したくてもできません。
ブロックは改造も簡単です。
ブロックの組み合わせを変えたり、新しいブロックを追加したりして容易に改造ができます。
プラモデルだと
容易に改造できません。ヤスリで削ったりニッパーで切ったり...。
部品の追加はできないし、いろいろ大変。
「人間クラスと動物クラスがあって...」って説明するよりわかりやすいような気がします。
LEGO
http://www.lego.com/eng/