タグ

ブックマーク / tociyuki.hatenablog.jp (2)

  • 単純データのシリアライズ速度比較 - Tociyuki::Diary

    最近の CPAN モジュールで Storable を当たり前のように使っているのをみかけるのですが、入れ子になっていないフラットなハッシュ程度の単純なデータをシリアライズするには重いのではないかとベンチマークをとってみました。ついでに、以前から比較してみたかった pack/unpack の固定長と可変長の比較もやってみました。ベンチマークをとるのは、ハッシュのシリアライズでありがちな要素数の少ない文字列リストと、配列のシリアライズでありがちな要素数が多い整数リストの 2 つにしました。 結論 要素数が少ないハッシュのシリアライズには split/join が速いようです。 要素数が多い整数のリストのシリアライズには整数 unpack/pack が速いようです。 可変長文字列 unpack/pack は split/join よりも遅いようです。 単純なデータ構造では Storable のメ

    単純データのシリアライズ速度比較 - Tociyuki::Diary
    naney
    naney 2006/07/18
  • による依存性の注入のデモ - Tociyuki::Diary

    いまさらながらですが、依存性の注入(Dependency Injection: 略してDI)の動作をキーボードを打つ指で実感したかったのでシンプルなデモをPerlで作ってみました。JavaにはSpring、RubyにはNeedleやCoplandなどのDIフレームワークがありますけど、Perlでは目立たないなと思って書いてみました。 DIでのコンポーネント生成は、has-aの関係にある複数のクラスのインスタンス群をDIコンテナが作りあげ、has-a関係をプロパティへの注入記述に従って組み立てます。そのまんまの動作をさせることにします。 デモですから、構成はシンプルにしたい。そこで、セッター・インジェクションに限定します。さらに注入できるのは、コンポーネントとPerlのオブジェクトやスカラーやリファレンスに限定します。前者の場合は、クラス名からインスタンスを新しく生成し、後者の場合は単に値を

    による依存性の注入のデモ - Tociyuki::Diary
    naney
    naney 2005/06/25
  • 1