S eda1a14b50ee24bcab19b62f40858e76 データマッパー

これだよこれ!ActiveRecordパターンが微妙にしっくりこないので、試行錯誤して行き着いた先がこれでした。

ドメインロジックとデータベースを分離するパターン。

登場人物は
・ドメインオブジェクト(ある問題領域のあるひとつのオブジェクト、例えばブログデータの1件、コメントデータの1件)
・マッパー(ドメインオブジェクトを取得、更新するやつ)

Factoryパターンなんかを使って実装する。PofEAA的に言えば、一意マッピングとレイジーロードの併用か。

ユニットオブワークで変更箇所をプールしたり、一意マッピングを行うためにレジストリを使うかもしれない。


phpDataMapperはドメインオブジェクトにsave()とかは実装しない方針らしい。他のやつもそうなのかな?ドメインオブジェクトとデータベースを分離するかららしい。

rubyのDataMapperは巨大なデータを後で読み込む「Lazy Loading」や、「Strategic Eager Loading」という関連するデータも同時に読み込む機能があるらしい。詳細は知らん


自分が考えたのはデータマッパーに構造が似てるけど、どうやらなんかデータソースのアーキテクチャに関するパターンの寄せ集めみたいになってる気がする。良いのか悪いのかは知らん

もしかして

    他の人の「データマッパー」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ

        関連ツイート