@magine
2015-02-05T08:14:27.000000Z
字数 676
阅读 1007
实习日记
今天为了优化日志记录系统,重构了公司后台的代码。
公司的商品有如下状态:
简要讲一下涉及到的三个数据库映射类:
原本代码逻辑如下:
现在改为如下逻辑:
create_or_update
方法,新建或更新库管记录时调用商品类修改状态的方法。update
方法和create
方法,不再强制修改状态,而是调用商品类修改状态的方法。该重构优点如下:
1. 修改状态统一都会调用商品类的方法,便于日志记录。
2. 因为产生状态变更的根源不再是商品类本身的方法,所以可以分操作类型来判断获取到的新状态是否合法,降低数据出错率(比如过去可以直接从待审核变成精品)。
3. 商品类的设置状态方法具有高度的可复用性,为以后的新功能做出了准备。