2011-12-01 42 views
0

我有一个Ruby类叫做范畴拥有像如何设计一个具有布尔变量列表的类?

  • 运动的各种布尔值
  • 食品
  • 教育
  • 娱乐

因此,我将与其他一些这一类类关联类来定义它的类别,基本上问题是这个类中的所有变量都只是布尔值。最好在Ruby类中使用4个不同的变量,或者使用整数并将布尔值编码到它中?

但是,如果我编码的代码变得不那么灵活incase我想要添加另一个变量到这种情况下,所以最好的方法是什么?

回答

3

如果用categories = [:sport,:food]这样的符号数组来表示类别,会不会更好? 也许你正在检查你的代码中的if (sport)之类的东西,它可以被if (categories.include? :sport)替代(在我看来这更有意义)。 这样,您将拥有一个具有“真实值”的数组,而不是拥有大量的布尔变量,这种方法更具可扩展性和可维护性,并且似乎可以实现您所需的功能。

无论如何,我缺乏关于你的课程的更多信息,也许如果你能提供更多关于你的课程的信息,我可以给你更好的建议。

+0

是的,这将是一个很好的解决方案,但我希望将Category作为一个类,可能我会按照您的建议使用该类中的列表。 – theReverseFlick