重构框架开始使用命名空间