第一个问题很简单:超市里的商品定价.
在超市里有些定价很简单:一瓶老干妈0.65美元, 但是有的价格就比较复杂. 比如:
- 三件1美元(那么如果我买4件,或5件该付多少呢?)
- 1.99美元/磅(那么买4盎司要多少钱?) (备注:16盎司=1磅)
- 买二送一(那么第三个没有价格吗?)
这个kata不用写代码, 就是让大家好好思考有关于定价的各种情况, 比如:
- 是否要有分数(比如1/3)?
- 需要四舍五入吗, 什么地方需要呢?
- 价格是会浮动的, 为了定价策略要做数据记录吗?怎么记录呢?
- 商品的价格和小票上的付款金额是同一个东西吗?
- 如果有一个正在促销的货架上的100个罐头做"买二送一", 那么你对仓库里的同一种罐头怎么估价?
这是一个看上去很简单的kata, 似乎只要一会就能完成. 但别小看它, 有些问题往深入去想其实可以想很久.
目标
这个kata的目的是让鼓励大家都去设计自己的数据模型, 用各个不同的方法和角度去解决问题, 比较每个方案的优缺点. 然后想想我们要用什么方法去实现它,记录它,验证它.