初始实现,可以运行简单示例,需要测试