タグ

ooに関するf99aqのブックマーク (13)

  • TraitとMoose::Role

    Introduction to ad-3.4, an automatic differentiation library in Haskellnebuta

    TraitとMoose::Role
  • オブジェクト指向の概念の発明者は誰ですか? - Smalltalkのtは小文字です

    忙しい人のためのまとめ 一般に「オブジェクト指向プログラミング」と呼ばれる考え方には発案者が異なる二系統がある。(ただし簡単のため、次のうち前者から批判的に派生して生じたプロトタイプベースのオブジェクト指向はここには含めていない) アラン・ケイによる、変化に強い長期運用可能な遅延結合システムを SIMULA67 にあった「オブジェクト」をメッセージの受け手とすることで実現(オブジェクトにメッセージ送信)するアイデアに基づく「メッセージングのオブジェクト指向」と、 ビアルネ・ストラウストラップ(前後して抽象データ型を発案したリスコフ人、オブジェクトクラスを考えたニガードらSIMULA陣営、Eiffelのメイヤーらも同様の着想を得ている)による、ユーザー定義型(抽象データ型)を SIMULA67 にあった「クラス」という言語機能を使って実現(カプセル化、継承、多態性)するアイデアに基づく「抽

    オブジェクト指向の概念の発明者は誰ですか? - Smalltalkのtは小文字です
    f99aq
    f99aq 2007/01/23
    メッセージ指向(Alan Kay), クラス指向(Bjarne Stroustrup), 手続きによる抽象化手法(William Cook)
  • 技術日記@kiwanami - JavaScriptでの継承について調べてみた

    JavaScriptはプロトタイプOO言語ということで、インスタンスコピーによる継承とカスタマイズを用いるのが素直な方法なのだと思う。JavaScriptでは、単純にインスタンスを丸々コピーする方法では効率が悪いということで、 prototype による非対称スコープチェーンを用いる方法と、prototypeへのプロパティのコピーを用いる方法がよく用いられている。 しかしながら、サイトによって良い悪いがばらばらで、結局これらの方法のどれを使うのが良いのかよく分からなかったので、どういう違いがあるのか調べてみた。 prototypeスコープチェーンを操作 参考文書: http://faces.bascule.co.jp/inheritance.html プログラマのためのJavaScript (11):継承についてもう少し - 檜山正幸のキマイラ飼育記 (はてなBlog) [鏡] C/C++

    技術日記@kiwanami - JavaScriptでの継承について調べてみた
  • ギコ猫とデザインパターン

    /‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ワーイ スレッドヘン 1ゲト ズザー! \ ‾‾‾‾‾‾|/‾‾‾‾‾‾‾‾‾‾‾ (   Λ_Λ ⊂ ´⌒つ゜ー゜)つ ‾‾‾‾‾‾‾ .___________ |               ..| | ギコ暗号入門はこちら .| |___________| ∧,,∧ || ⊂ミ.,,゜Д゜彡つ https://www.hyuki.com/cr/cat_index.html 目次 はじめに 登場するたち ギコGoFのパターンたち ギコとマルチスレッドのパターンたち アニメGIF みなさんからのフィードバック ぜひ、感想をお送りください このページにリンクしてくださっている方々 リンク集 更新履歴 はじめに このページでは2ch.netのキャラクタ「ギコ」にナビゲートしてもらい、 デザインパターンをいくつか紹介(?)します。 といっても

  • プリミティブ値でもプロトタイプ的継承: Days on the Moon

    書き上げた後に元記事の続きが出ているのに気づいたが、方向性が違うようなのでそのまま掲載。 404 Blog Not Found:javascript - プロトタイプ的継承 (元記事: Prototypal Inheritance) より。継承という言葉は意味が広いので、この操作に対してはチャイルドの作成といったほうが個人的にはわかりやすい。 さて、元記事で紹介されているコードではプリミティブ値からのチャイルドの作成 (継承) ができなかった。これはなぜかといえば、オブジェクト作成の際、プリミティブ値をプロトタイプ ([[Prototype]] 内部プロパティ、__proto__ プロパティ) に設定することはできないからである。 そこで、プリミティブ値が渡された場合は、それをラッパオブジェクトに変換することにする。といっても場合分けの必要はない。Object 関数を使えば、プリミティブ値

  • Kazuho@Cybozu Labs: JavaScript は、なぜプロトタイプベースなのか

    « JavaScript を学ぶ上で読むべきウェブサイト | メイン | re: javascript vs perl - オブジェクトのメモリー効率 » 2006年10月19日 JavaScript は、なぜプロトタイプベースなのか 決して専門ではないので、以下、間違っていたら指摘してください。 JavaScript がプロトタイプベースであることに対する一番妥当な説明は、クラスベースのオブジェクト指向言語よりもプロトタイプベースの言語のほうが、ランタイムの構造が単純になり、かつ、メモリ使用量が小さくなるからでしょう。 クラスベース OO のランタイムを作成しようと思うと、以下の各機能が必要になります。 1) クラス毎: メンバ関数を納めるハッシュテーブルと、親クラスを指すポインタ 2) インスタンス毎: プロパティを格納するハッシュテーブルと、クラスへのポインタ また、インスタンスの生

  • 関数一発でプロトタイプチェーンに繋げて、オブジェクトをクローンする。 - IT戦記

    最近、プロトタイプ的継承の話しが盛り上がっています。 http://blog.livedoor.jp/dankogai/archives/50662064.html http://labs.cybozu.co.jp/blog/kazuho/archives/2006/10/javascript_string.php http://blog.livedoor.jp/dankogai/archives/50662606.html 最終形がやたら複雑になっています でも、実際はあそこまで複雑に書かなくても、できると思います ^^; そう思う理由 P 関数は object 関数の中でローカルのものである。コンストラクタとして使える必要はない。なので、 Atomic な場合でも P は function(){} でいい。 method 関数では P.prototype のプロパティに関数が代入されて

    関数一発でプロトタイプチェーンに繋げて、オブジェクトをクローンする。 - IT戦記
  • javascript - プロトタイプ的継承完全版 : 404 Blog Not Found

    2006年10月18日21:00 カテゴリLightweight Languages javascript - プロトタイプ的継承完全版 Kazuho@Cybozuさま、いつもありがとうございます。 Kazuho@Cybozu Labs: JavaScript の String 型を継承する 結論から言うと、String 型も継承っぽいことができます。こんな感じ。 おかげでプロトタイプ的継承モデルの完全版が出来ました。 AtomicなObjectを継承 これは、以下のように包括的に出来ます。 var Atomic = function(C){ var P = function(v){ this._v = v; }; P.prototype = new C; P.prototype.valueOf = function(){ return this._v.valueOf(); } P.pro

    javascript - プロトタイプ的継承完全版 : 404 Blog Not Found
  • - ソフトウェア原則

    Skip to content. Small Text Normal Text Large Text Search Powered by Eiwa System Management, Inc. 個人情報の取扱について Sections ホーム 技術文書 コミュニティ スペシャル ダウンロード イベント Personal tools You are not logged in You are here: Home » 技術文書 » オブジェクト指向 » ソフトウエア原則 Navigation 技術文書 オブジェクト指向 ソフトウエア原則 Java C# サルでも!シリーズ UML パターン XP リファクタリング テスティング ツール その他 書籍一覧 コミュニティ スペシャル ダウンロード イベント We are an: お問合せ先: info at ObjectClub.jp Docu

  • サルでもわかる 逆引きデザインパターン 第1章 はじめてのデザインパターン はじめに:

    第1章 はじめてのデザインパターン はじめに デザインパターンとは 特集の構成 すぐわかるオブジェクト指向 すぐわかるUML おわりに 第2章 逆引きカタログ ロジック編 Singleton (シングルトン) Factory/Factory Method (ファクトリ/ファクトリメソッド) Strategy (ストラテジ) Composite (コンポジット) Visiter (ビジタ) 第3章 逆引きカタログ J2EE編 Template Method (テンプレートメソッド) Facade (ファサード) ViewHelper (ビューヘルパ) DAO (Data Access Object) 第4章 逆引きカタログ その他 ユーティリティクラス 実行時例外を標準的に使う Nullオブジェクト 第5章 デザインパターン適用の勘所 はじめに アプリケーションの仕様 リファクタリング前のサ

  • 青木淳「オブジェクト指向システム分析設計入門」

    はじめに このはオブジェクト指向技術を利用してソフトウェア開発することを目指す技術者および管理者のために書かれたです。プログラムのコードや難しい数式などを排除してあり,図と文章によって基概念や適用技術を平易に解説しています。オブジェクト指向技術数学(形式)ぬきで探求する試みといえるでしょう。 来,オブジェクト指向技術を,瓶から瓶へ水をもらさぬように,正確に伝えるには,数学(型理論)を必要とします。数学的形式化が行われていないと,オブジェクト指向で表面化する問題の議論がかみ合わず空転することが多いからです。あの時はこうだっだ,この時にはああだったと経験則の披露になりかねないのです。やはり何かしらの形式化は必要でしょう。しかし,数学的形式化の苦しみときたら並大抵ではありません。特に,後述するインヘリタンス(継承) や並列などが絡んだあかつきには残酷なのです。私だけかもしれません

  • Prototype.js を使った JavaScript OOP 講座 #01

    社内の精鋭エンジニアを中心に定期的に勉強会をすることになった。んで、 JavaScript の講義は僕がやることになった。 資料を社内だけでとどめておくのはもったいないので、ここに公開していきます。社内の人も社外の人も読んでください。 講義の内容は基的にソース嫁。ソースレビュー形式。 ※ターゲットは JavaScript は書いたことない、オブジェクト指向言語プログラマ。 Section 00 Prototype.js の前に JavaScript のオブジェクトの概要・・・ オブジェクトを作ってみる。 var object = {};オブジェクトにメソッドとかプロパティを追加してみる。 var object = { field: 'IT戦士', method: function() { alert('hello ' + this.field); } }; object.method()

    Prototype.js を使った JavaScript OOP 講座 #01
  • Rubyで学ぶオブジェクト指向/デザインパターン

    Rubyで学ぶオブジェクト指向入門 オブジェクト指向プログラミング入門(その1).pdf オブジェクト指向プログラミング入門(その2).pdf オブジェクト指向プログラミング入門(その3).pdf オブジェクト指向プログラミング入門(その4).pdf 添付1 論理シミュレータクラス図.pdf 添付2 Pque説明.pdf 添付3 回路シミュレーション例.pdf 添付4 LogicSimソースコード オブジェクト指向プログラミング入門(その5)簡易システム性能評価シミュレータ.pdf オブジェクト指向プログラミング入門(その6)RUnitに適用されたデザインパターン.pdf Rubyで学ぶデザインパターン パターンサンプルコード このサンプルコードは、Java言語で学ぶデザインパターン入門 結城 浩(著) (ソフトバンクパブリッシング ISBN:479731462)に掲載されているサンプルソ

  • 1