オブジェクト指向言語。。。

最近ちょっとコンピュータネタが多いなぁ
ここらでいったん終わりにしようw
オブジェクト思考苦手なんです。
昨日学校でオブジェクト指向についてお師匠さんに言われました。
なんか私は古い技術にしがみついてるから新しいものが入らないんだー
みたいな事ですねw
とりあえず vi や Emacs から離れてエクリプスとかで修行しろ!と
Java でプログラムを書いてみろ!と
全く理解できないわけじゃないんですけどねぇ
Cでプログラム書いてても,static で他のオブジェクトファイルから内容隠蔽してカプセル化とか,
なるべく独立性の高い関数を作ったりは気をつけてるつもりです。
でもなんかずっと話ししててオブジェクト指向の何がわからないかがわかりました。
どこまでをオブジェクトとして扱うかです。
ここからは極論ですが,
オブジェクト=もの
じゃ,
オブジェクト=レジスタ
レジスタEAX君に足し算をお願いして云々。。。
うわぁ アセンブラって究極のオブジェクト指向だったんだね!
このことから読み取れるように私はどこまでをオブジェクトとして扱うのかがわからなかったんです。
でも話しのなかでリファクタリングの重要性などもとりあえずは理解できました。
大まかな一つの機能をオブジェクトとして実装すればいいのだなと。
あと,Cプログラマの視点からは,
インスタンスの生成とかすごい億劫なんですよね。
new 演算子なんてつまりは malloc() なわけですが,
ものすごいコストの高い処理なわけです。
出来のすごい悪い自作オセロですが,
スタック溢れが怖くて malloc() +再帰 でAI書いてますが,
#ここらへんは既に考え方が間違ってますが
AI自体がものすごい重い処理になってしまってます。
ここらへんもオブジェクト指向ではあまり考えてはいけないようですね。
再利用性や生産性のためらしいです。
まぁパフォーマンスの問題はコンパイラがそのうち何とかしてくれるでしょう。
ということで残り少ない学生生活,
せっかくオブジェクトな実習あるので身につけておこうとおもいます[にこっ/]