optimize:分割各个函数到独立的文件