域模型 - 建模模板类和实例类?

时间:2013-09-14 04:52:41

标签: .net oop uml domain-model

我正在编写一个程序,有人可以设置电子邮件(To,CC,Subject,Body等)。然后,他们可以设置各种触发器,这些触发器将使用他们定义的设置发送电子邮件。

如何建模?我是否会有一个EmailTemplate类来存储电子邮件设置,然后是EmailMessage类,它将代表发送的电子邮件的实际实例?

为了使其更适用于可能发现此问题的其他人,如何为用于创建另一个类的实例的类建模(我是否正确地说过了这个?)?

有更好的方法吗?我是不是太复杂了?

3 个答案:

答案 0 :(得分:1)

如果消息永远不会改变,那么EmailTemplate就足够了。如果用户可以更改实际的电子邮件,那么您需要EmailMessage。这似乎是一个非常简单的场景,至少与你告诉我们的细节有关。

TDD也可以在这方面提供帮助,以测试的形式写出一些期望并看看它会导致什么。

答案 1 :(得分:0)

除了@MikeSW已经说过的话,你似乎试着做BDUF。首先尝试使用简单版本 - 然后更容易想象您希望客户如何使用它,然后使用小步骤重新设计和重构(这使得TDD适用,如MikeSW所述)。

关于您创建另一个类实例的类的问题 - 您指的是Factory pattern。事实上,这似乎是一个发送电子邮件API的好方法。考虑一下这个设计:http://www.limilabs.com/blog/send-email-with-attachment - 它是以这种方式设计的(" builder"是"工厂")的昵称。

答案 2 :(得分:0)

似乎您可以使用任何EmailMessage作为模板,将其复制到新的EmailMessage,然后允许用户根据需要进行更改。

相关问题