真的很苦恼,怎样才能说服同事使用我认为正确的方案?
有些问题我感觉很明显该这样做才是对的,而有些同事用的方法我认为很绕。比如设计一个数据库,表person里存人的基本信息如生日性别等,表status(personid,status,statusdate)里存有每个人的状态和进入这个状态的时刻,一个状态对应一条记录,每个人可以有很多个状态。
同事非要在person表里加如初始状态和初始时间,我说为什么不加状态表里呢,他说状态表里也加,不过查起这个人第一次进入系统时的状态方便(不用查两个表)。我说这样数据有冗余,可能造成不一致,他说用程序控制不可能不一致。我说可能有想不到的问题,他说不可能啦。
总之,我想不出一种情况是他这种方法无法实现的,而自己又觉得很别扭。还有一些例子比如同事把状态和动作混在一起,有“拘留”状态、“释放”状态和“自由”状态,我觉得“释放”是动作就不应该作为状态的一种啊。通过查询“自由”状态的前一个状态不就知道是“释放”的吗。
这种情况该怎么办呢?首先,是我对还是同事对呢,如果是我对该怎样处理这种情况,我心里确实觉得很别扭啊。。。