タグ

DesignPatternとdesignpatternに関するkeyesberryのブックマーク (7)

  • PofEAA's Wiki - (ファウラー | 読書会)

    PofEAAのWikiです。Martin Fowler氏とAddison-Wesley Pub Coの許可を得て、 パターンカタログの翻訳を行っています。bliki_jaと同じくどなたでも参加可能ですので、是非参加してみてください ;-) ※このサイトは書籍の邦訳とは一切関係ありません。 ■ PofEAAのパターンカタログ and PofEAAのパターンカタログ(邦訳版)ここから読み始めるとよいでしょう。対応表もあります。 ■ 読書会 第12回の開催予定は未定です。 ■ PofEAA読書会メーリングリスト読書会に関する話題を扱っていますが、読者会への参加を強制するものではありません。興味のある方の参加は随時受け付けています。

  • 状態管理用の変数をインスタンスに持たせるなこのタコって話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く

    たとえば、今、「ユーザーが方向を入力したらプレイヤーが動くゲーム作りたい」みたいなはなしがあるとする。その場合、モデルクラスはまあシンプルな実装として下のようなものが考えられると思う。 「できたよー」って見せにいったら、今度は「あのさー、『高速移動モード』っていうモード欲しいんだよね。そのモードだと二倍速で動くの」って言われたとする。シンプルにやるとこうなりますね。 「できたよー」って見せにいったら、今度は「なあ、すげえ面白いこと考えたんだけど、『蟹モード』って面白くない?横は4倍速で動くんだけど縦は半分の速度で動くの」とか言われたわけです。あなたは「お、おう」と言って、以下のようにコードを修正しました。 これ、ヤバい感じしますね。破滅の匂いがする。「今度は『よっぱらいモード』欲しいな〜。入力に関係なくランダムに動くの」みたいなこと言われたら確実に複雑さが爆発してメンテ不能になりになり死

    状態管理用の変数をインスタンスに持たせるなこのタコって話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く
    keyesberry
    keyesberry 2013/02/10
    イイ。
  • Scala2.10.0のDependent method typesと型クラスを組み合わせた『The Magnet Pattern』がヤバい件 - ( ꒪⌓꒪) ゆるよろ日記

    これが……型の力かッ……!! spray | Blog » The Magnet Patternという記事で、「The Magnet Pattern」というデザインパターンが紹介されている。 これは、メソッドオーバーロードで解決していた問題を、型クラスとDependent method typesを組み合わせて置き換えることで、オーバーロードの際の様々な制約(Type Erasureなど)を突破し、より柔軟な拡張性を得ることができるというもの。このパターンでは、引数の型に応じて異なる結果型を返すようにできる。 この記事で、今まで何のために使われるのかわからんかったDependent method typesの有効性が理解でき、あらためて型の力を思い知った。 以前に"Generalized type constraints"(Scalaで<:<とか=:=を使ったgeneraliz

    Scala2.10.0のDependent method typesと型クラスを組み合わせた『The Magnet Pattern』がヤバい件 - ( ꒪⌓꒪) ゆるよろ日記
  • Learning JavaScript Design Patterns by Addy Osmani

    Document has moved, if you aren't automatically redirected go here.

  • Design Patterns in Ruby: Introduction « DevInterface Blog

    Hello everyone. With this post I would like to start a serie of articles concerning the description of the most common design patterns and how these can be applied with the Ruby language. In the world of software engineering you don’t need to reinvent the wheel to face daily problems: these problems are often very common and in most cases they require a similar resolution. Christopher Alexander sa

  • Iterator.rd

    Design Pattern: Ruby Companion 4 Iterator パターン 4.1 Iteratorパターンの意図 (ずばっと略) 4.2 Iteratorパターンの実装 Ruby版では,全てのクラス定義とサンプルを1つのソースにまとめています. 4.2.1 サンプルその1: 普通の実装 素朴にRubyで実装したものです.メソッドなどはRubyっぽく変えたところもあります. # Iterator Pattern # sample1 class Book def initialize(name) @name = name end attr_reader :name end class BookShelf def initialize() @books = Array.new() end def [](index) return @books[index] end def a

  • Rubyでデザインパターン

    最終更新日: デザインパターン ■はじめに Erich Gammma,Richard Helm,Ralph Johnson,John Vlissidesの4人(通称GoF:the Gang of Four)の「オブジェクト指向における再利用のためのデザインパターン」というは有名です。 ある種の良く使うコーディングテクニックを23個のパターンにまとめたものです。「パターン化」というテクニックは、非常に便利です。私たちも日常知らず知らずのうちに「パターン化」を行っています。何度も仕事をこなしていくうちに「経験」という形で体の中にそのノウハウが身についていくのはまさに「パターン化」ではないでしょうか? オブジェクト指向プログラミング言語を使ったときの良く使うパターン23個が掲載されているわけですが、いかんせんムズかしい。 そこで出てきた救世主が「Java言語で学ぶデザインパターン」結

  • 1