前面的文章让我们的程序能轻松的应对业务的变更了。这本该是一件皆大欢喜的事。但是,本系列文章的目的不仅仅在于此,而且还没有满足哪些要少些代码的程序员的要求。
“装饰器模式”想必这对程序员来说并不陌生。基本上问每一个程序员,他们都能回答的头头是道。而且有写面试官肯定在面试的时候回问(这个框架用了什么模式啊。用装饰器有什么好处啊)。
我想说的是,你知道装饰器那么多。你在你的项目中使用了这种模式么(除了使用框架给你分装的)?我想有大半的程序员没有在自己的项目中编写装饰器来使用吧。所以还是恳求,知道就用上吧。
本篇文章的目的是使用装饰器来方便和简化我们开发,让我们的业务方法变简单。
我们使用三个装饰器方法来完成我们的目标:
装饰器方法名 | 用途 |
join_order | 和订单信息进行合并(无论什么数据只要有user_id做关联) |
join_order_good | 和订单商品信息进行合并(无论什么数据只要有order_id做关联) |
join_coupon | 和券信息进行合并(无论什么数据只要有order_id做关联) |
第一步、获取用户信息和获取订单信息进行程序拼凑后返回结果(在装饰器join_order方法中实现)。
第二步、获取订单商品信息并且并和“第一步”获得的结果进行拼凑并返回结果(在装饰器join_order_good方法中实现)。
第三步、获取订单券信息并且和“第二步”获得的结果进行拼凑并返回结果(在装饰器join_coupon方法中实现)。