OceanBase 中,Insert, Update, Delete 这三个操作都是 DML,都要操作存储层接口,于是免不了有一些公共的逻辑。这时候啊,用上了一些抽象接口,最后发现真是蛋疼!

虽然他们大体上流程比较像,但是具体到细节上,真是处处不像。这时候用抽象的接口来定义行为时,就要传入大量不同的参数,最后发现真是脱了裤子放屁多此一举。不如直接写面条,还清晰一些!

回头,好好总结一下,好好重构一番。

面条并不可怕,重要的是清晰,易于维护,易于扩展。