private function create($name)
 {
     $path = $this->app['path'];
     $fileSystem = $this->app['files'];
     //gen views
     $generator = new ViewGenerator($path, $fileSystem);
     $generator->gen($name);
 }
 private function createController($name, $folder)
 {
     $path = $this->app['path'];
     $fileSystem = $this->app['files'];
     $generator = new MakeModelGenerator($path, $fileSystem);
     $generator->gen($name);
     $generator = new RepositoryGenerator($path, $fileSystem);
     $repoUsage = $generator->gen($name, $folder);
     $repoUsage = str_replace("/", "\\", $repoUsage);
     $repoUsage = "use " . $repoUsage . ";";
     //gen controller
     //gen interface
     $generator = new InterfaceControllerGenerator($path, $fileSystem);
     $generator->gen($name);
     //base controller
     $generator = new BaseControllerGenerator($path, $fileSystem);
     $generator->gen($name, true, $repoUsage);
     //controller type
     $generator = new ControllerGenerator($path, $fileSystem);
     $generator->gen($name, 'API', false);
     $generator->gen($name, 'Frontend', true, $folder);
     $generator->gen($name, 'Backend', true, $folder);
     //gen views
     $generator = new ViewGenerator($path, $fileSystem);
     $generator->gen($name);
     //gen validator
     $generator = new ValidatorGenerator($path, $fileSystem);
     $generator->gen($name, $folder);
 }