タグ

OOPに関するVoQnのブックマーク (5)

  • 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita

    あわせて読みたい 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 「オブジェクト指向プログラミング」と「関数型プログラミング」のたった一つのシンプルな違い あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 2015年に備えて知っておきたいリアクティブアーキテクチャの潮流 この記事について この記事は新人向けの研修内容を再編集してお送りいたします。 ここで述べる内容はどのようにして現在のプログラミングスタイルが生まれてきたかを理解することで、よりよいプログラムを書くためのもので、正確なソフトウェア工学の歴史を学ぶためのものではありません。正確な歴史を把握したい場合は、原典をあたるようにしてください。 また、想定している読者は「よくあるオブジェクト指向プログラミングの学習」を既にし

    新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita
    VoQn
    VoQn 2014/05/14
    よくまとまってる
  • Type Safe(?) MetaClass for Gauche MOP

    仕事はもっぱら PHP HTML CSS JavaScript なのですが,ここ最近は一年に一度の Scheme 熱に浮かれております.特に思い付いたアイデアをスケッチする感覚でEmacs立ち上げてアルゴリズムの実装とかやるのに,とても Gauche は気持ちが良い.みんな Schemer になりましょう. CLOS をもう少し使いこなしてより自分好みにしたいGauche の CLOS 風オブジェクトシステムってとても良い感じなのだけど,クラス設計時に Perl の Moose のようにある程度メンバ変数の型を固定しておきたいなぁと思う事がしばしばあり,試しにこんな風なメタクラスを作ったら,完全に型安全というわけではないけれど,そこそこ自分が求めているレベルの安心が担保できた.というのを書きとめておく. 要求スロット定義時に <hoge> またはそのサブクラスのインスタンスのみにしたい ス

    VoQn
    VoQn 2011/09/07
    Gauche で型安全もどきメタクラス
  • Press Enter■

    Copyright(c) 2000-2009 ITmedia Inc. 著作権はアイティメディア株式会社またはその記事の筆者に属します。(著作権について) 当サイトに掲載されている記事や画像などの無断転載を禁止します。 「@IT」「@IT自分戦略研究所」「@IT情報マネジメント」「JOB@IT」「@ITハイブックス」「ITmedia」は、アイティメディア株式会社の登録商標です。 当サイトに関するお問い合わせは「@ITへのお問い合わせ」をご覧ください。

    VoQn
    VoQn 2011/04/16
    (悪夢のような)おもしろい読み物だった
  • is-a - Wikipedia

    知識表現、オブジェクト指向プログラミング、オブジェクト指向設計では、is-aとは、あるクラスBはもう一つのクラスAのサブクラスである(また、AはBのスーパークラスである)という関係である。 言い換えれば、"BはAである"は通常、概念Bは概念Aの特化であり、概念Aは概念Bの汎化であることを意味する。例として、「フルーツ」は「リンゴ」、「オレンジ」、「マンゴー」などの汎化である。リンゴはフルーツである(is-a) (Apple is a fruit.)と言える。 オブジェクト指向プログラミングではis-a関係は継承という概念の中で使われる。たとえばリンゴは、「果肉に種が入った植物」に属するというような、フルーツすべてに共通するプロパティをすべて継承するといって差し支えない。 is-a関係とは、異なる種類の階層の性質をもつ関係にhas-aがある。 オブジェクトと従属するオブジェクトの論理関係がi

  • Haskell vs OOP - あどけない話

    「Why Haskell matters?」(なぜ Haskell は重要か?)には、Haskell とオブジェクト指向プログラミングを比較した章があります。日語訳が見当たらなかったので、必要な部分を訳してみます。 オブジェクト指向プログラミングの優れた利点は、データとそれに作用する関数を一つのオブジェクトにまとめられることではない。優れた利点、それは、(実装からインターフェイスを切り離せる)データのカプセル化と、(型の一群の振る舞いを同じようにする)多相性だ。しかしながら、データのカプセル化と多相性は、OOP の専売特許ではない! いやぁ、心洗われる文章です。:-) データのカプセル化 Haskell でのデータのカプセル化は、それぞれのデータ型をそれぞれのモジュールで宣言し、そのモジュールからインターフェイスだけを公開することで実現できる。モジュール内部には、内部データに触れる関数群

    Haskell vs OOP - あどけない話
  • 1