タグ

tipsとgofに関するkiyo_hikoのブックマーク (2)

  • どういう場合にAUTOLOADを使用するか?...未解決 - end0tknr's kipple - web写経開発

    perlではAUTOLOADという仕組みがあります。 sub AUTOLOADが定義されていると、呼び出し対象のmethodがない場合にこれが呼ばれます。 #!perl #### in ActivePerl use strict; use warnings; my $animal = Animal->new(); $animal->hogehoge(); package Animal; sub new { my ($class) = @_; my $self = {}; return bless $self, $class; } sub AUTOLOAD { our $AUTOLOAD; warn "$AUTOLOAD can't find in ",__PACKAGE__,"\n"; } 1; このサンプルスクリプトを実行すると、次のように表示され、AUTOLOAD実行時の$AUTOLO

    どういう場合にAUTOLOADを使用するか?...未解決 - end0tknr's kipple - web写経開発
    kiyo_hiko
    kiyo_hiko 2012/04/26
    なるほど Decoratorで使うと良さげなのか。StateとかStrategyでも使えそうかしら PerlのOOPはよくわからない
  • Abstract Factoryパターン と Builderパターンの違い

    GoFデザインパターンはなかなか奥深く、入門書を読んでパターンごとのクラスの絡み合いを理解しただけでは 真価を理解できないことが多々あります。 独習デザインパターン のクラス図からAbstract Factoryパターン と Builderパターンの違いがうまく説明できなかったので GoFを紐解いて その目的を調べてみました。 Abstract Factoryパターンの適用可能性 Abstract Factoryでは、「ある抽象的な型の実装を返す」というインターフェースを定義し、 そのインターフェースの実装を多種揃えるといった形になります。 GoFでは例としてlook&feelを取り上げています。 JavaのswingのライブラリではUIのデザインをごっそり切り替えることができますが、 その具象クラスの生成を具象型を知らずに行いたいというようなケースを想定すればよいのでしょう。 GoF

    kiyo_hiko
    kiyo_hiko 2011/07/13
    Directorが関わってくる前提かどうかが大きく異なるわけなのか
  • 1