重构部分代码，将coins的管理进行封装