« 流血 | メイン | イベント »

2005年01月30日

オブジェクト指向と異世界

オブジェクト指向

読書感想文

オブジェクト指向でなぜつくるのか
http://www.amazon.co.jp/exec/obidos/ASIN/4822281957/250-1639688-9889024

 を読んでいるところですが、少し見通しがよくなりました。
図書館にあった多くの本は、現実世界がどうのこうのとか、車の部品がとか、そんな話ばかりでよくわからなかったんですが、
(より技術書よりの本は避けていたという理由もあります)
しかし本書は冒頭から「現実世界に例えるのは適切では<strong>ない</strong>」と斬っているように、
できるだけ平易に、しかし「プログラミング技術としてのオブジェクト指向」をすっきりと解説してくれています。

 とりあえず、インスタンスと継承については今まで概念としてしか理解できていなかった部分が仕組みとしてある程度わかったので、とてもよかったです。
この先読み進めれば、他にも良く理解できるようになる事もあるでしょう。
というわけで、借りて良かったです。
当然これは基本的な考え方を説明しているだけなので、当然この先もっと掘り下げた情報を摂取する必要はありますが、俄然意欲が沸いてきました。
それは即ち、「オブジェクト指向プログラミングって結構便利そう」の一言に尽きます。
今までは「ステップアップするには覚えなきゃいけないのか……面倒そう」と思っていたので、大きな違いです。

 もっとも、実際にコーディングしていないし勉強もしていない今なので、想像の域を超えていないわけですが。
ところで、一番驚いたのはJAVAがC言語の直系の子孫だと書いてあった事です。
第一印象って怖いですね。全然そうとは知りませんでした。
JAVAで遊んだ事無いですけど。

現時点での雑感

C++C言語でオブジェクト指向を利用しよう
C#C言語でオブジェクト指向を利用しよう+自由度を下げて保守性を高めよう
JAVAオブジェクト指向の流行に火を付けたらしい。けどやっぱりあんまりスマートじゃない印象が。絶対あのロゴのせいだ

現時点の知識での納得なので的外れかもしれません

多分、今まで読んだ本はオブジェクト指向プログラミングとオブジェクト指向の解説の境界が曖昧な構成になっていたのでわかりづらかったのではないかなと思います。
オブジェクト指向といっても、例えば「オブジェクト指向モデリング」といった風にプログラミング方法だけを指すわけでは無いらしく、
その事を強調する余り現実的な知識の紹介が疎かになってしまっている、のでは無いかなと考えました。

異世界

世界が連続的では無いことを改めて実感しました。
そして、世界が在る物ではなく創る物である事も。
多くの普通の人と普通で無い人が居ました。
自分がどちらかは判りません。

現実

文化祭みたいな雰囲気。
物を創れる人は楽しそうでよいなあと思った。

投稿者 miff : 2005年01月30日 16:26

コメント

ポリモーフィズムは未だに良くわからない。
多分C++を実際に触ってみる段階で理解できるようになると思うけれど……。
まあ、無理なら他に資料をあたってみるだけです。
できるだけ早期にCで作ると決めた物二つを仕上げてC++に移りたいという目標が確立しました。

クラスは関数と変数を含む構造体を宣言するような物なのですね。
struct foo{ ... }
インスタンスを作成するのも
foo var;
構造体変数自体の値も構造体へのポインタだし、インスタンスへのポインタが返ってくるのと同じっぽい。

それで、なんとなくクラスからインスタンスを作成しないと利用できないという点も納得した感じ。
構造体も宣言するだけじゃ使えませんもんね。

投稿者 miff : 2005年01月30日 16:34



XREAAD