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