我正在尝试在Ruby中创建一个简单的程序来跟踪股票的价格变动,但我并不完全确定它应该如何设计。
基本上,我正在考虑一个类库存,具有所有属性,如name,desc等。但是,我不确定price属性如何工作。因为对于每个股票,我还想跟踪价格的历史并在图表上绘制它们。所以,我的问题是,我应该创建另一个类,价格并将其与Stock相关联吗?还是有更好的方法?
我是OOD的新手,非常喜欢一些解释,有用的链接或其他建议。提前谢谢。
答案 0 :(得分:0)
其中一些取决于您选择的DB:OO,文档或关系。如果您使用的是典型的关系数据库,那么您将拥有一个代表价格与股票之间一对多关系的价格表。
好像你应该有一个单独的价格类,因为我假设你想跟踪价格随着时间的推移。我知道这不是Ruby,但你的Stock类看起来像这样:
public class Stock
{
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public List<Price> PriceHistory { get; set; }
}
然后是Price:
public class Price
{
public int StockId { get; set; }
public DateTime PriceDate { get; set; }
public decimal Price { get; set; }
}
注意:您需要忽略ID是公共的这一事实,因此可以通过外部类进行更改。但是,为简单起见,此代码以这种方式呈现。
希望有所帮助。