little-hands/ddd-q-and-a

なにかアクションを行った時に発生するメール通知に関しての質問です。どのアクションにも使えるメール通知クラス(メールオブジェクトを受け取ってsendするもの)を作るべきか、アクションごとにメール通知クラスを作るかで迷っています。自分はRail...

Opened this issue · 0 comments

Question

なにかアクションを行った時に発生するメール通知に関しての質問です。

どのアクションにも使えるメール通知クラス(メールオブジェクトを受け取ってsendするもの)を作るべきか、アクションごとにメール通知クラスを作るかで迷っています。

自分はRailsを使っており、フレームワークのメール送信機構(Action Mailer)を利用すると、後者のようになってしまいそうです。ただ、アクションごとに伝えたい内容は違うので、メールオブジェクトはアクションごとに違った表現をしてしかるべきとも考えるので良いのかなと考え始めています。

自分の考えについて、DDD的に沿ってそうかコメントいただいてもいいでしょうか?

Answer

あまりDDDの中で通知を問う扱うべきかという言及はないので、一般の設計観点からお答えします。
後者の方が型で明示的になるので可読性を高めやすいと思います。ただ、前者が悪いかと言うとそうとも言い切れないので、正直なところ、書き心地や好みで決めてしまって良いと思います。