
Factory Methodと、Abstract Factoryの、構造的な違いは分るんだけど、どう使い分けるかが正直わかんないんだ・・・。 #dp140
2010-04-22 23:32:07
Factoryも何種類か用意したいときは抽象化するみたい。http://bit.ly/94hwC0 RT @tail_y: Factory Methodと、Abstract Factoryの、構造的な違いは分るんだけど、どう使い分けるかが正直わかんないんだ・・・。 #dp140
2010-04-22 23:52:33
@tail_y AbstractFactoryは大きな範囲でごっそり変えるシーンに良く使われ、FactoryMethodはより範囲が小さいと自分は思っています。 #dp140
2010-04-23 08:59:55
@tail_y 例えばUnitTest時に「テスト環境」用の共通概念があって複数のインターフェースで表現されるならAbstractFactoryで生成。でも、ある単体クラス用のモックの生成ならFactoryMethodで生成。みたいな。あくまで自分の解釈ですが。 #dp140
2010-04-23 09:07:24
Visitorパターン:複雑な構造をしたクラスからデータを取り出したいときに、スーパーエージェント(黒服サングラスのイメージ)を作って飛び込ませる。帰ってきたエージェントの変数に、欲しいデータがきっと入ってるはず。実装が面倒くさいです。 #dp140
2010-04-22 23:45:04
コンストラクタとか、インスタンス、オブジェクトって単語はなるべく使わないように心がけました。慣れていないと、こういうカタカナは飛ばして読んでしまうので #dp140
2010-04-23 00:09:33
個人的オススメパターンは、State、Template Method、Proxy、Commandかなぁ。PrototypeとかFlyweight、Observerは知らないうちによく使う。 #dp140
2010-04-23 00:12:12
デザパタはほかのプログラマと交流するために名前覚えた方が良いって聞いたことある。 名前があることでここはこれですればいいよとかの説明が短くなおかつ正確にできる。 wikipediaにもあるけどただのカタログなんだよね。 #dp140
2010-04-23 00:40:35
Strategyパターンはアクションゲームを作る上で超便利です。移動やジャンプ等の動作をキャラクター毎に選択的に設定できます。動作毎にインターフェイスを定義したらいいよ! #dp140
2010-04-23 00:41:15
Template Methodパターン:メソッドの数や呼び出し順までそっくりなクラスが二つできた、どうにか共通部分を一箇所にまとめたいよね。親クラスを作って、同じ処理を入れとけばよくね?それがお前のTemplate Methodパターン! #dp140
2010-04-23 07:58:00
Mediatorパターン:クラスの中に他のクラスを入れる変数がいっぱいあって、他のクラスもそんな状況でお互い変数に入れあってて、入れ替わるたびにお互い渡しなおして!あーもう!って時はその変数まとめて持つクラスを1個作って、そいつに管理させるとすっきり。 #dp140
2010-04-23 16:55:16