我使用什么设计模式?

时间:2010-11-09 00:57:13

标签: design-patterns

假设我正在对此场景进行建模 - 我可以使用哪种设计模式来对此进行最佳建模?

基类是CellPhonePlan。 CellPhonePlan有两个属性:

  • int MonthlyPrice
  • 类型字符串列表,StandardFeatures

StandardFeatures可能包含诸如“200分钟通话时间”之类的值。

我还想为标准的CellPhonePlan提供一些插件。如

1)家庭计划

  • int Price
  • 类型字符串列表,功能

2)WeekendPlan

  • int Price
  • 类型字符串列表,功能

我希望能够选择StandardFeatures,FamilyPlan和WeekendPlan,并且其价格和功能反映了我所做的选项。我也想知道如何使用设计模式来最好地表示这一点!

由于


对不起,我想我没说太清楚。我所追求的是有基本计划加上家庭,加上周末。所以所有的价值都加起来了。

2 个答案:

答案 0 :(得分:4)

不需要设计模式......

class CellPhonePlan
{
    int MonthlyPrice { get; set; }
    List<string> Features { get; set; }
}

var standardPlan = new CellPhonePlan
{
    MonthlyPrice = 10,
    Features = new List<string>() { "200 minutes call time", "texting" }
};

var familyPlan = new CellPhonePlan
{
  MonthlyPrice = 20,
  Features = new List<string>() { "500 minutes call time", "texting", "shared between a family" }
};

var weekendPlan = new CellPhonePlan
{
  MonthlyPrice = 5,
  Features = new List<string>() { "200 minutes call time", "but you can only talk on weekends" }
};

答案 1 :(得分:1)

如果您真的想使用设计模式,这看起来很适合Decorator pattern