2006-02-16から1日間の記事一覧

Visitor

なんかしらめんどくさい。普通に使うのは Adapter, Bridge, Proxy, Composite, State, Strategy, Template Method あたりか。なんか多態の説明に過ぎない感のあるものが多いとよく思う。

Template Method

好き。

State, Strategy

しばしば switch-case の方が楽なんだ。あと State は fiber で消せる場合とか。

Observer

GUI.

Memento

遺産をわざわざ別オブジェクトに残すのがめんどいです。

Mediator

これなんだっけと思った。あー Player とか Enemy とかが結局 Game クラスに処理投げるような話か。全部の情報がグローバルにあればいいんだ。

Iterator

システムに合わせて適当に使う、作る。

Interpreter

やったことない、と思うたぶん。なんか多態の説明。

Command

やったことない。本当にうまく undo 実装できるんかと。

Chain of Responsibility

めんどい。委譲構文があってもあんまやりたくない。

Flyweight

OO とあんま関係無い気がするけど、まぁ使う。

Facade

元のクラスをリファクタリングする。

Decorator

こんなにうまく分離できるのは GUI と IO 以外に何があるんだろう。

Composite

好き。

Adapter, Bridge, Proxy

めんどい。けど割とよくやる気がする。ラクな委譲構文があればなぁ…と思いながら。あとこれらもなんか多態の説明というか。

Singleton

グローバル変数を愛しています。

Prototype

プロトタイプベースがいい…そういや D の this ってなんかこいうのできたらいいのになって昔思った気がします。 class Base { abstract this(Base b); } class Derived1 { this(Base b) {} } class Derived2 { this(Base b) {} } int main() { Base orig = n…

Factory Method

いちいちファクトリークラスとか作るのめんどい。クラスがオブジェクトならさっきの Ruby の例みたいなのができて良い。

Builder

こんなのあったっけ系。ただの多態の説明というか。

Abstract Factory

こんなでかいもの作らない。

今見たデザインパターン

で、なんとなく今の目で見たデザインパターンを記録したくなりました。今っていうのは要するに集団開発から離れてて、設計とかインターフェースとかどうでもいいよ病がヒドくなりまくっている、今。

ArrayList と List の話

http://www.kmonos.net/wlog/58.php#_2309060206のあたりから、なんか議論全然おってませんがなんとなく。public メソッドは全て interface で記述したものをオーバーライドすべきだみたいな主張があった気がするんですが、あれを進めて ArrayList から List…

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h