タグ

oopに関するrdcsのブックマーク (2)

  • ものすごく初歩的な「どうしてオブジェクト指向を使うのか」の説明 - 遥か彼方の彼方から

    プログラムオブジェクト指向が難解なだけの不気味な悪人だと思っているだろう友人達に向けて、オブジェクト指向の良さというか、必要性みたいなのを書いてみようかなと思います。というのも、凄腕プログラマ達を見ているとオブジェクト指向は複雑怪奇なものに見えるし、また「これがオブジェクト指向だよ」と例で見せられる巨大なクラスはあくまで利用するだけのものに思えるし、文法解説書にあるオブジェクト指向の解説だと必要性がわからないかなーと思うからです。僕は全然オブジェクト指向を理解していないし、ましてや解説なんて出来るレベルではないのですが、オブジェクト指向の第一歩として役に立てればなと思います。読者対象はC言語をちょびっとでも囓ったことがある人で、言語はC++を使います。文法の話をするわけじゃないので、プログラムを読んで理解出来なくても大して問題はありません。 スタート地点:「平均を求めるプログラムを作る」あ

  • いまさらながらだけど、オブジェクトとクラスの関係を究めてみようよ - 檜山正幸のキマイラ飼育記 (はてなBlog)

    オブジェクトとクラスの関係について、次のような説明を見かけました(文言の引用ではなくて、檜山による要約)。 オブジェクトとクラスは全体としてツリー構造をしていて、ツリーの末端をオブジェクト、末端以外のノードをクラスという。末端であるオブジェクトは、その親ノードであるクラスのインスタンスと呼び、クラスどおしの親子関係を継承関係と呼ぶ。 うーむ、この説明、ある意味「簡潔でわかりやすい」とも言えるのだけど、ちょっと単純化し過ぎでしょ。 オブジェクトやクラスの概念て、そんなに美しくもなきゃ、整合的でもありません。実用性やら実装上の都合やらでゴチャゴチャですがね。しかし、そのゴチャゴチャが悪いともいえません。ゴチャゴチャを無理に単純化することなく、必然性を持った(幾分は偶発的だけど(苦笑))複雑さとして理解すべきかと思います。 というわけで、メタクラスやレイフィケーション(reification)な

    いまさらながらだけど、オブジェクトとクラスの関係を究めてみようよ - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 1